Загрузка...

Ассоциативные массивы в PHP

#[ArrayShape] как замена дженерикам в php
php

В PHPStorm появилась поддержка ассоциативных массивов, правда синтаксис поддержки крайне неудобный, все аргументы нужно записывать в одну строку, вложенность не поддерживается.

wtw6ri1nnlbrib5gfbr 2ucwoy8

Пример:


    /**
     * Update order data
     *
     * @param $response array{ problem: string, resultState: array, deliveryDurationInMinutes: int, deliveryRestriction: int, deliveryServiceProductInfo: array }
     */
    public function order_update( array $response){} 

В качестве альтернативы можно использовать атрибут #[ArrayShape]. Доступен начиная с версии PhpStorm 2020.3 и среди его преимуществ: более красивая подсветка синтаксиса, поддержка многострочности, а также возможность использовать константы для описания структуры.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *