Почему вы используете расширение?
reduce(lambda x, y: x+y, l)
Это должно работать нормально.
Я предлагаю использовать форму
$var == 'value'
для повышения удобочитаемости. Я не думаю, что существует реальный разрыв в производительности между ними, у php.net нет никакой информации об этом (или я не смог найти его).
Нет никакой реальной разницы. Второй используется, чтобы защитить себя от опечатки if ($var = 'value')
, но не очень читаемо. Используйте главным образом первый, если вы не устали, что, набирая символы пропуска.
Если вы пишете код
if ($var = 'val') echo $var; //Output will be "val"
, но если вы делаете
if ('val' = $var) echo $var;
Вы получите синтаксическую ошибку.
В основном используется $var=="value"
, и если вы хотите его оптимизировать, вместо ==
используйте ===