Комментарии 27
крайне редко есть возможность ставить нестандартные расширения
Ну логично что у разработчиков нет возможности ставить что-то на продакшен-серверах, ни к чему хорошему это не приведет. Но по запросу админы должны же устанавливать необходимое ПО, если они игорируют или беcпричинно отклоняют такие запросы — надо как-то решать этот вопрос
Может я пропустил, но замерялась ли разница в скорости между екстеншином и полифилом.
Они все будут по производительности как
array
, полифил скорее для тестов и подсветки в IDE предназначенДумаю больше не для тестов, а для тех мест, где действительно таки нет возможности поставить чеснок расширение. Для подсветки с головой бы хватило набор интерфейсов или пустых классов, как это делает пхпШторм для встроенных классов и функций.
Для тестов — хм, возможно, но если есть возможность поставить расширение, то зачем это юзать для тестов? Они (классы) все финализированны, а значит менять поведение не выйдет даже в тестах. Ну, честно меня...
Для тестов — хм, возможно, но если есть возможность поставить расширение, то зачем это юзать для тестов? Они (классы) все финализированны, а значит менять поведение не выйдет даже в тестах. Ну, честно меня...
Надо будет попробовать. Спасибо за проделанную работу.
Прекрасная статья, прекрасный перевод. С удовольствием прочитал и просмотрел все примеры. К сожалению (или к счастью), на текущем проекте нет нужды особо заморачиваться с производительностью php, но если вдруг придётся заниматься оптимизациями — буду иметь ввиду.
Вот еще слайды в тему статьи, мне кажется, будет полезным пролистать:
http://www.slideshare.net/patrick.allaert/php-data-structures-and-the-impact-of-php-7-on-them-php-days-2015
http://www.slideshare.net/patrick.allaert/php-data-structures-and-the-impact-of-php-7-on-them-php-days-2015
Хотелось бы сравнения с judy arrays.
Да, но все эти графики справедливы только тогда, когда вы берете именно расширение! Если брать реализацию на PHP, она даёт только общий интерфейс, но не этот прирост.
PHP придерживается прагматичного подхода: иметь предельно правильный, здравый и реалистичный способ решения проблемы
Мы с вами в одном мире живем?
https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
Мы с вами в одном мире живем?
Судя по дате статьи я уже года на 4 впереди
Это все мелочи. Да и...
Короче половина статьи устарела, вторая половина применима не только к php. Если исходить из экономической эффективности — у php с этим все хорошо. Ну а то что его до 5-ой версии не проектировали вообще — ну это уже истарическая данность. Сейчас язык потихоньку чистят, хотя конечно же "идеальным" он никогда не будет.
- mysql_* — deprecated, removed in php7
- foreach ($foo as &$bar) — пофикшено в php7
- inconsistent: strpos, str_rot13 — это уде субъективизм, вы всегда можете завернуть это дело в красивую обертку
- no stack traces by default or for fatals, complex error reporting — пофикшено в php7, теперь на любой чих вываливается исключение
Короче половина статьи устарела, вторая половина применима не только к php. Если исходить из экономической эффективности — у php с этим все хорошо. Ну а то что его до 5-ой версии не проектировали вообще — ну это уже истарическая данность. Сейчас язык потихоньку чистят, хотя конечно же "идеальным" он никогда не будет.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Эффективные структуры данных для PHP 7