Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Как while перевести в for + сортировка (https://javascript.ru/forum/server/6502-kak-while-perevesti-v-sortirovka.html)

Jekel 01.12.2009 00:14

Как while перевести в for + сортировка
 
Как на for это сделать, читал что while работает медленно иль чет в этом роде) Кстати еще прошу помочь с выводом допустим имен вподряд...но в строке не больше 10 имен должно быть, тоисть если в базе 30 имен то 3 ряда по 10 имен выводит.:blink:
$result = mysql_query("SELECT * FROM users"); 

while ($row = mysql_fetch_array($result)){ 
    echo 'name '.$row['name']; 
}

Gvozd 01.12.2009 00:28

Цитата:

Сообщение от Jekel
Как на for это сделать, читал что while работает медленно иль чет в этом роде)

слышал звон, да не знаешь где он
это незачем переделывать на for
Цитата:

Сообщение от Jekel
Кстати еще прошу помочь с выводом допустим имен вподряд...но в строке не больше 10 имен должно быть, тоисть если в базе 30 имен то 3 ряда по 10 имен выводит

$result = mysql_query("SELECT * FROM users"); 
$counter=0;
while ($row = mysql_fetch_array($result)){ 
    echo 'name '.$row['name'].' ';
if($counter++%10==9)
    echo '<br>';
}

Jekel 01.12.2009 00:31

:blink: и чего я не додумался просто <br> перенести))))) Спасибо большое....

Jekel 01.12.2009 10:49

Очень интересно как на for сделать этот же код :)

Gvozd 01.12.2009 15:18

Цитата:

Сообщение от Jekel
как на for сделать этот же код

как-как!
через задницу, блин
держи
$result = mysql_query("SELECT * FROM users"); 
for($i=0,$s=mysql_num_rows($result);$i<$s;$i++){
    $row = mysql_fetch_array($result);
    echo 'name '.$row['name']; 
}

PS это код наверняка медленнее, чем c while
PPS за оторванные конечности я ответственности не несу

Kolyaj 01.12.2009 15:28

$result = mysql_query("SELECT * FROM users"); 

for ($counter=0; $row = mysql_fetch_array($result); $counter++) { 
    echo 'name ' . $row['name'] . '&nbsp;';
    if($counter % 10 == 9)
        echo '<br>';
}
И ничего не медленней.

Gvozd 01.12.2009 17:00

Цитата:

Сообщение от Kolyaj
И ничего не медленней.

забыл о дополнительной подзадаче
не использовал возможность задавать вторым элементом for любое условие, вполне сознательно, так как считаю, что для простейших задач циклы должны использоваться так, как это изначально предполагается, то есть for-когда известно количество итераций, а while-когда неизвестно количество итераций, но известно другое условие выхода

Kolyaj 01.12.2009 17:05

Цитата:

Сообщение от Gvozd
то есть for-когда известно количество итераций, а while-когда неизвестно количество итераций, но известно другое условие выхода

Это домыслы.

Gvozd 01.12.2009 17:26

пусть так
это мое видение правильного кода

e1f 01.12.2009 18:43

Цитата:

Сообщение от Kolyaj (Сообщение 36918)
Это домыслы.

+1. В перле for используется для пробежки по массиву, когда о каунтере вообще речь не идет.


Часовой пояс GMT +3, время: 03:24.