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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как лучше перебирать массив, два способа

Сообщения:  [1-9] 

 
 автор: Disable   (04.03.2007 в 23:53)   письмо автору
 
   для: DEM   (04.03.2007 в 18:30)
 

Второй метод однозначно быстрее.
В первом скрипте Вы присваиваете $i=0 и проверяете выражение $i<mysql_num_rows($query) столько раз, сколько итераций в цикле, что само по себе уже "узкое место".

   
 
 автор: ШИМ   (04.03.2007 в 22:27)   письмо автору
 
   для: DEM   (04.03.2007 в 21:02)
 

есть массив $array

foreach($array as $val)
{
     echo "$val";
}

выводит поочередно каждый елемент массива
Для работы с массивами в самый раз!!!
В отличии от for не нужно задавать условие прекращения цикла как в for - for($i=0;$i<=count($array);$i++)

   
 
 автор: DEM   (04.03.2007 в 21:02)   письмо автору
 
   для: ШИМ   (04.03.2007 в 19:29)
 

А я не понимаю как он вообще работает ))) Но пока что от этого не страдал, хотя может быть скрипты были бы легче...

   
 
 автор: Бамси   (04.03.2007 в 21:01)   письмо автору
 
   для: ШИМ   (04.03.2007 в 19:29)
 

Мне так же foreach нравиться, удобный.

   
 
 автор: ШИМ   (04.03.2007 в 19:29)   письмо автору
 
   для: DEM   (04.03.2007 в 18:49)
 

Нельзя однозначно сказать какой лучше!!
В зависимости от ситуации!
Я чаще всего использую foreach()

   
 
 автор: DEM   (04.03.2007 в 18:49)   письмо автору
 
   для: Бамси   (04.03.2007 в 18:47)
 

Мне просот интересно мнение форумчан...

   
 
 автор: Бамси   (04.03.2007 в 18:47)   письмо автору
 
   для: DEM   (04.03.2007 в 18:30)
 

Измерь сам... чего сложного.

<?php
function gettime()
{
  
$part_time explode(' ',microtime());
  
$real_time $part_time[1].substr($part_time[0],1);
  return 
$real_time;
}

$start_time gettime();
set_time_limit(0);

//Тут начинаеться сам код.

echo '.:.';

//Заканчивается.

$stop_time gettime();
echo 
"<p>".(bcsub($stop_time,$start_time6))."</p>";
$timelog = (bcsub($stop_time,$start_time6))."\r\n";
?>

   
 
 автор: ddhvvn   (04.03.2007 в 18:45)   письмо автору
 
   для: DEM   (04.03.2007 в 18:30)
 

В данном случае, я бы воспользовался "while"...

   
 
 автор: DEM   (04.03.2007 в 18:30)   письмо автору
 
 


<?
$query 
mysql_query("SELECT * FROM table");
//Это
for($i=0;$i<mysql_num_rows($query);$i++)
{
  
$arr mysql_fetch_array($query);
  echo 
$arr['name']."<BR>";
}
//Или это
while($arr mysql_fetch_array($query))
{
  echo 
$arr['name']."<BR>";
}
?>


Какой метод быстрее.. FOR или WHILE? Я умаю WHILE, но помню раньше пользователся FOR (не умел пользоваться вторым :( )

   

Сообщения:  [1-9] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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