PhpStorm предупреждает о «Ожидаемый класс, получил класс []» - PullRequest
2 голосов
/ 21 марта 2019

Как я знаю, я не могу определить массив класса как аргумент функции.

Как:

someFunc(someClass[] $some) {}

Но я получаю предупреждение PhpStorm о неверном аргументе при передаче массива элементов класса. Может кто-нибудь объяснить мне это предупреждение?

Пример моего кода:

public function getContent(Item $item)
{
   ...
}

// $items is items array of class Item
$content = getContent($items)

1 Ответ

3 голосов
/ 21 марта 2019

PhpStorm понимает phpDoc теги.

Таким образом, вы можете сделать что-то вроде этого:

/**
 * @param Item[] $item The item to get the content from.
 */
public function getContent(array $item)
{
   ...
}

Но вы должны использовать arrayв коде, так как это то, что тип.Но PhpStorm также поймет вашу аннотацию phpDoc, чтобы обеспечить лучшие подсказки при вводе.

...