Как написать в #[ArrayShape([]) что функция возвращает массив с Не Ограниченным Числом Параметров

Здравствуйте Подскажите пожалуйста, как можно указать в

#[ArrayShape([

что у массива может быть не ограниченное количество элементов? Я гуглил, но нашел только четкое указание элементов с ключами и значениями Декларирую ArrayShapeВызываю метод с ArrayShape и пытаюсь получить доступ к элементу с не указанным в ArrayShape ключом


Ответы (1 шт):

Автор решения: Alexander Semikashev

Вы хотите использовать атрибут не по назначению, суть этого атрибута указана в комментарии к нему:

The attribute specifies possible array keys and their types.

Атрибут определяет возможные ключи массива и их типы.

Пример:

#[ArrayShape(["f" => "int", "string", "x" => "float"])]

То есть мы заранее знаем какие ключи у возвращаемого массива и типы данных.

С подробным описанием можно ознакомиться здесь https://github.com/JetBrains/phpstorm-attributes/blob/master/src/ArrayShape.php

То есть в рамках этого атрибута - невозможно.

→ Ссылка