Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как вывести 10 строк из множества, пропруская ненужные
 
 автор: Владимир22   (23.12.2010 в 18:19)   письмо автору
 
 

Есть такой код:
<?
$file_array
=file("stroki.txt"); $count=count($file_array);
for(
$i=0;$i<10;$i++){
$fi=explode('*',$file_array[$i]); 
if (
$fi[0]=="ненужная строка") {continue;} $i++;
echo 
"$fi[0] <br>";
}
?>

Выводит всё что нужно, но не 10 строк, а меньше (так как вычитает ненужные строки).
А надо, чтобы было ровно 10 строк уже с учётом вычтенных ненужных строк. Как? HELP!

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 18:22)   письмо автору
 
   для: Владимир22   (23.12.2010 в 18:19)
 

А не многовато ли раз у вас инкремент используется?
И, да, код ужасно оформлен - ни отсутпов, ни переносов..

  Ответить  
 
 автор: Владимир22   (23.12.2010 в 18:42)   письмо автору
 
   для: neadekvat   (23.12.2010 в 18:22)
 

Лучше бы подсказали как правильно, если знаете, конечно... Просто дискутировать нет времени, простите...

  Ответить  
 
 автор: Николай2357   (23.12.2010 в 18:48)   письмо автору
 
   для: Владимир22   (23.12.2010 в 18:42)
 

Если нет времени, пользуйтесь этим.
По теме - а как они должны быть, пустые строки, на своих местах или вконце?

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 18:50)   письмо автору
 
   для: Николай2357   (23.12.2010 в 18:48)
 

О, неплохо)

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 18:54)   письмо автору
 
   для: Владимир22   (23.12.2010 в 18:19)
 

А теперь не совсем понимаю задачу.
Допустим, что как-то так:
<?php
$i 
1;
foreach(
$file_array as $value)
{
    if (
$i == 10)
        break;
    
    
$fi explode('*'$value);
    
    if(
$fi[0] == "ненужная строка")
        continue;
    
    ++
$i;
    echo 
"$fi[0] <br>";
}

  Ответить  
 
 автор: Владимир22   (23.12.2010 в 19:20)   письмо автору
 
   для: neadekvat   (23.12.2010 в 18:54)
 

<? 
$i 
1; foreach($file_array as $value) { 
if (
$i == 10) break; 
$fi explode('*'$value); 
if(
$fi[0] == "ненужная строка") continue;  ++$i
echo 
"$fi[0] <br>"; } 
?>


Так заработало. Спасибо neadekvat, по поводу оформления - просто люблю компактность.

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 19:22)   письмо автору
 
   для: Владимир22   (23.12.2010 в 19:20)
 

АААА во что вы превратили код?!!

В жопу такую компактность. В ЖОПУ! Еще раз сказать?
Читабельность ровно ноль.

  Ответить  
 
 автор: Владимир22   (23.12.2010 в 19:28)   письмо автору
 
   для: neadekvat   (23.12.2010 в 19:22)
 

Поверьте, что это самая нормальная читаемость - свои такие коды я читаю на ура, просто дело привычки + не захламляется пробелами страница. Так хорошо и и глазу приятно.
А вот ваш код растягивает три строчки на целую страницу ( и это не экономно), но в тоже время понимаю, что у всех свои причуды (и ещё много есть почитателей догм) и спокойно к этому отношусь. Ещё раз спасибо вам за правильный код и с Новым Годом!

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 19:34)   письмо автору
 
   для: Владимир22   (23.12.2010 в 19:28)
 

Вот поэтому я не берусь поддерживать чужой код.
Но вас, видимо, уже не переубедишь - печально.
И вас с наступающим.

  Ответить  
 
 автор: nikita2206   (23.12.2010 в 19:36)   письмо автору
 
   для: neadekvat   (23.12.2010 в 19:34)
 

Не расстраивайся, все иде умеют форматировать код по твоей просьбе.

  Ответить  
 
 автор: neadekvat   (23.12.2010 в 19:53)   письмо автору
 
   для: nikita2206   (23.12.2010 в 19:36)
 

Если бы я увидел скомканный код (для человека, вот, он компактный, а для меня - месиво), то первое, о чем бы я подумал - ТАК пишут обычно новички, а что можно ждать от новичка? Оформление - это далеко не все сюрпризы кода.

  Ответить  
 
 автор: sim5   (23.12.2010 в 19:56)   письмо автору
 
   для: Владимир22   (23.12.2010 в 18:19)
 

Что определяет строку ненужную, некое значение?

  Ответить  
 
 автор: Владимир22   (23.12.2010 в 19:58)   письмо автору
 
   для: sim5   (23.12.2010 в 19:56)
 

Да уже всё разрешилось. Всем спасибо!

  Ответить  
 
 автор: sim5   (23.12.2010 в 20:00)   письмо автору
 
   для: Владимир22   (23.12.2010 в 19:58)
 

Да я вижу решения, но коли массив, то надо просто удалять из массива ненужные элементы и делать уже потом вывод. Кстати вам правильно заметили, код у вас не то чтобы нечитаем, просто нелогичен по сути.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования