Найти количество элементов в $array
PHP $array
, которое быстрее / лучше / сильнее?
count($array)
или sizeof($array)
?
Спасибо Энди Лестеру, я уточнил свой вопрос, имея в виду многоязычную перспективу. Руководящие комментаторы говорят
«[sizeof] не означает то же самое во многих других языках на основе C"
Это правда?
Я бы использовал count()
если они совпадают, так как, по моему опыту, это более распространено, и поэтому будет заставлять меньше разработчиков читать ваш код, чтобы сказать « sizeof()
, что это такое?» и необходимо проконсультироваться с документацией.
Я думаю, это означает, что sizeof()
не работает, как в C (вычисление размера типа данных). Вероятно, это явно означало это, потому что PHP написан на C и предоставляет множество идентично названных оболочек для функций C ( strlen()
, printf()
и т. Д.).
Согласно phpbench :
Стоит ли пытаться заранее рассчитать длину петли?
//pre-calculate the size of array $size = count($x); //or $size = sizeOf($x); for ($i=0; $i<$size; $i++) { //... } //don't pre-calculate for ($i=0; $i<count($x); $i++) { //or $i<sizeOf($x); //... }
Дается цикл с 1000 ключами с 1 байтовым значением.
С pre calc – count () Общее время: 152 мкс
Без pre calc – count () Общее время: 70401 мкс
С pre calc – sizeof () Общее время: 212 мкс
Без pre calc – sizeof () Общее время: 50644 мкс
Поэтому я лично предпочитаю использовать count () вместо sizeof () с pre calc .
Они идентичны по sizeof()
В отсутствие каких-либо причин беспокоиться о «быстрее», всегда оптимизируйте для человека. Что имеет смысл для читателя?
Согласно веб-сайту, sizeof()
является псевдонимом count()
, поэтому они должны работать с одним и тем же кодом. Возможно, sizeof()
имеет немного накладных расходов, потому что ему нужно решить его для count()
? Это должно быть очень минимальным.
sizeof()
– это просто псевдоним count()
как указано здесь
Пожалуйста, используйте функцию count. Вот пример того, как подсчитывать массив в элементе
$cars = array("Volvo","BMW","Toyota"); echo count($cars);
Функция count()
возвращает количество элементов в массиве.
Функция sizeof()
возвращает количество элементов в массиве.
Функция sizeof()
является псевдонимом функции count()
.