Начитывание «паттернов», кстати, один из лучших способов выучить английский язык. Есть даже бредовые книги с готовыми десятками тысяч готовых фраз %) А пытаться находить соответствия между частями речи различных языков или учить правила со странной формулировкой нудно и долго. И книги Мёрфи реально клевые для чтения: предложения из жизни, «как надо» вместо правил и написана носителем языка. Результат будет через несколько месяцев. Главное, выполнять все упражнения и понять каждый юнит из книги.
> Не понимаю зачем люди плодят название
В той же книге Гаммы Эрика написано, что многие паттерны очень похожи, но преследуют разные цели и из-за этого имеют разные названия (можно вспомнить про bridge/adapter/proxy из паттернов проектирования).
Ваши тесты немного ошибочные. Дело не в разных кавычках, а в том, что в варианте с одинарными кавычками используется оператор конкантенации, из-за которого вы и получаете разницу в 0.7 сек. Если в варианте с двойными кавычками использовать ту же конкатенацию, то время выполнения двух вариантов должно сравняться.
Вопрос об этом не дает мне покоя на одеске %) Я тоже считаю что там null, но мануал говорит «Uninitialized variables have a default value of their type depending on the context in which they are used — booleans default to FALSE, integers and floats default to zero, strings (e.g. used in echo) are set as an empty string and arrays become to an empty array.».
В той же книге Гаммы Эрика написано, что многие паттерны очень похожи, но преследуют разные цели и из-за этого имеют разные названия (можно вспомнить про bridge/adapter/proxy из паттернов проектирования).
// mixing ++ and + produces undefined behavior
$a = 1;
echo ++$a + $a++; // may print 4 or 5
Каких таких основ и финтов?)
функция в императивном ЯП это тоже statement. Print тоже не функция, они все конструкции языка.