Как стать автором
Обновить
336
0
Роман Пронский @pronskiy

PHP

Отправить сообщение

Слишком сложно получилось. Joe Watkins подробнее описал все у себя в блоге https://blog.krakjoe.ninja/2021/06/only-complete-applications.html

Код написан не по PSR-12 так что все еще нет ༼ຈل͜ຈ༽

Такая ошибка очень быстро обнаруживается на этапе разработки. А вот ->where('u.id = ' . $_GET['id']); всплывет попозже и, вероятно, с большими потерями для бизнеса.
Забыл добавить в подборку канал «Зарелизился ли Yii 3?» :-) t.me/has_yii3_released
1) Про первый пункт в RFC явно написано wiki.php.net/rfc/enumerations#auto-scalar_conversion

Whether or not a Backed Enum can be viewed as “close enough” to its corresponding scalar value is debatable, and of debatable value. For instance, is a string-backed enum Stringable? Should an int type check accept an int-backed enum value? Should a string-backed enum work in a print statement? What about up-converting a scalar to its corresponding enum automatically?

The optimal behavior here, if any, will likely not become apparent until enums see widespread use. We have therefore opted to omit all auto-conversion at this time. If clear and compelling use cases for auto-conversion appear in the future, later PHP versions can re-introduce such auto-conversion in a more targeted, well-informed way.


2) 3) Согласен, тут не оч удобно сделано.

Воркэраунд, который предлагают это через константу:

enum Method: string
{
   
    case Get = 'GET';
    case Post = 'POST';
    case Put = 'PUT';
    
    const Post2 = self::Post;
}

function foo(Method $method) { 
    var_dump($method); 
};

foo(Method::Post2);
3v4l.org/nESt8/rfc#git.master

4) Давай весь скрипт в студию.
Авторы енамов провели целое исследование прежде чем предложить RFC. Вот тут сводная таблица по языкам github.com/Crell/enum-comparison#summary.

Вот так можно сгруппировать их:
Fancy Constants: C, Typescript, F#
Fancy Objects: Python, Java, C#, Scala
Algebraic Data Types: Haskell, Swift, Rust, Kotlin

Ну и собственно PHP вдохновлен третьей группой.
Поправил, спасибо!

А PHP — изначально шаблонизатор, это понятно.

Вот в Енамы добавили по сути константы и методы — можно пример, когда это плохо?

А чем это плохо?

Yii 3 вполне современный, выглядит годно и требует PHP 7.4. Все еще не понимаю в чем проблема следить за ним сегодня? Завтра кто знает что будет ¯\_(ツ)_/¯

Тейлор пилил Laravel в одиночку, когда уже были Symfony, Zend, CodeIgniter, Yii, CakePHP.

Чем больше фреймворков, тем лучше для всей экосистемы PHP. Будет разнообразие и конкуренция идей. А вот от гегемонии «одного пути» ничего хорошего не будет.

Как оказалось подобный запрос уже есть, поэтому ваш тикет привязали к нему и соответственно приоритет повысился.

А создайте, пожалуйста, тикет в трекере на это https://youtrack.jetbrains.com/issues

Была в блоге https://blog.jetbrains.com/pycharm/2021/04/pycharm-2021-1/, а на Хабре не все продукты делают.

Поправил, спасибо

Вот похожий реквест: youtrack.jetbrains.com/issue/IDEA-239359 — проголосуйте и допишите информацию в комментарии, пожалуйста.
На фотке бежевый CakePHP. Они были доступны вот тут swag.cakephp.org/products/cakephp-elephpant?variant=43020313172, но сейчас там sold out.
Когда нужна высокая производительность и другими средствами уже не получается получить больше.

Информация

В рейтинге
Не участвует
Откуда
Харьков, Харьковская обл., Украина
Зарегистрирован
Активность