![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| bars80080 |
|
||||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
дык, for тоже является соответствующей функцией, созданной для облегчения труда
как же он тогда вообще считает? вот у меня вопрос тестировщикам, а вы пробовали на крупных массивах сравнивать for и foreach? к примеру, двумерный массив, содержащий строки из БД, ну хотя бы 100-10000, при этом в каждой записи 5-10 полей в том числе со строковыми элементами до 250 символов? |
||||
|
|||||
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: 2 Всего: 20 |
Хм. В то время как for:
А по поводу тестов: http://derekgallo.com/2007/04/19/for-vs-foreach/ Тут есть foreach, while и другие И наверное самый полный: http://www.phpbench.com/ |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
| NLspieler |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 619 Регистрация: 13.10.2008 Где: Берлин Репутация: 16 Всего: 19 |
Кажется, если я не ошибаюсь, foreach может пройтись и по такому массиву:
? for же этого сделать не сможет без дополнительного гемора. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
| Рыжий |
|
||||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: 2 Всего: 20 |
Нет, foreach не вводит новую переменную в php, из мануала:
Это как использование функции next()/each(), которые просто возвращают элемент массива, и перемещают указатель на следующий. |
||||
|
|||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
да причём здесь ввод дополнительной переменной? я говорю о физической памяти. вот у нас поле ячеек объёмом в 200-3000 мегабайт оперативной памяти, какие из них содержат непосредственно данные массива? неужели пхп кладёт их рядком друг за другом и ориентируется всего по двум флагам начала и конца, двигая их как в регистре? да я не уверен, что даже данные одного элемента массива занимают упорядоченный набор байт. полюбому для массива составлен список адресов и вводится итерационная переменная на каком-то глубоком уровне, C или ещё ниже, которая перебирает все адреса и извлекает через них данные
|
|||
|
||||
| vasac |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1060 Регистрация: 4.5.2006 Репутация: 8 Всего: 36 |
Где-где, а на Винграде потока столь феерического бреда не ожидал.
Давайте ещё в очередной раз подискутируем насчёт print vs echo. |
|||
|
||||
| Рыжий |
|
|||
![]() Помешанный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1423 Регистрация: 19.9.2004 Репутация: 2 Всего: 20 |
Дык я о том же - foreach не объявляет переменную в php окружении, насколько мне известно много переменных в php влияют на скорость выполнения.
угу, что-то мы далеко в лес зашли |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |