Comments 26
А что насчет лямбды объявленной со словом static
array_walk($arr, static function($value, $key){ echo $key.$value;});
По идее должно быть быстрее если вызовы горячие
Шторм советует добавить статик с пометкой "микрооптимизация". Я добавляю :)
Вообще забавно, как среда разработки сама формирует нужный ей стиль кода. Добавят завтра джетбрейновцы A/B эксперимет, который будет советовать, в качестве оптимизации, заменить while на if/goto и ведь многие поведутся и будут потом уверены, что это влияет на производительность.
PS Я тоже добавляю :D
Ну так на то она и "микро", что влияние незначительное
Эта микрооптимизация работает в случае, когда вы находитесь в контексте класса.
Т.е. просто анонимная функция биндит контекст по-умолчанию, а статическая — не биндит контекст и не пробрасывает внутрь анониманой функции $this
. Вот в чем микрооптимизация
Хотя возможно это я такой туповатый, а вокруг все люди поспособнее и поскромнее ходят и живут.
Это совершенно другой процесс переводить текст на английский и читать английский текчт
Термины — может быть. Но грамматику, да и простые слова, не говоря об идиомах. Вот первая же предложение "Дело было вечером, делать было нечего" — можно перевести дословно, конечно, но наверняка что-то лучше есть.
Да, кстати, у меня в школе был французский :)
Вроде как ещё можно array_map потрогать. Вроде там что то крутили
Принцип то один, гляньте внутри, я сам в коде использую map вместо foreach, а вот подробностей не помню, почему так
Препарируем PHP. Как устроены while, foreach, array_walk и некоторые другие страшные слова