Комментарии 10
В z-engine все хорошо, кроме лицензии (мягко говоря странная), хотя применений в реальных ситуациях у него дофига.
Можно избавиться любого код генерации (скомпилированные шаблоны, кеши настроек и т.д.) и хранить все в опкод кеше. В результате пхп инстанс может быть полностью read-only. С другой стороны появляется возможность хранить в опкодкеше зловреды, которые не возможно найти обычным поиском по файлам. Да такие зловреды будут жить до перезагрузки, но это никак не поможет с поиском их пока они активны.
Странная? Вроде бы MIT, не? По крайней мере, так считает Гитхаб.
Когда пакет появлялся только — лицензия была проприетарной. И условно-платной (по договорённости) для коммерческого использования.
Если я ничего не перепутал, конечно.
а ну значит уже изменил. Раньше была своя уникальная.
да изменил:
https://github.com/lisachenko/z-engine/commit/7dc64a317cb11ca7dff07ee36bfec51833b46355
Жаль что нет возможности PHP разработчиками добавить в PHP возможность конкатенировать массивы.$array3 = $array1 . $array2;
чтобы работало аналогично $array3 = array_merge( $array1 , $array2);
Почему же нет
$array1 = ['key1' => 1, 'key2' => 2];
$array2 = ['key2' => 3, 'key3' => 3];
$array3 = [...$array1, ...$array2]; //['key1' = 1, 'key2' => 3, 'key3' => 3]
А ещё помимо предсказуемого spread-оператора есть менее предсказуемый оператор + для массивов:$array = $array1 + $array2
Этим способом вы можете только добавить недостающие ключи в $array1, существующие будут проигнорированы.
Вот Вот.
@kubk что будет ?
$array = [1,2,3] + [6,7,8];
Оператор + краток, но не удобный. Было бы удобно писать так же кратко но без замены значений по ключам. $array3 = $array1 . $array2;
Мечта. Удобно, быстро, и очень понятно , что написано.
.
@sofwar $array3 = [...$array1, ...$array2]; Спасибо. буду знать.
Но такая запись такая же громозкая как писать array_merge($array1,$array2)
В обоих случаях надо писать скобки и в обоих случаях надо что-то дописывать
Выходя за рамки ООП. Разработка расширений для PHP на PHP