public function first(){
return $this->results()[0];
}
Моя IDE (PHP Designer 8) помечает (красным) указанную выше функцию, возвращающую строку, которая получает первое значение из базы данных, однако, когда я запускаю ее, ошибок не возникает, и она дает ожидаемые результаты (см. Ниже). Если я удалю [0], то флаг исчезнет.
stdClass Object (
[id] => 2
[username] => jhcorsair
[password] => b40ad7a04a1d37828697197d3eeb893a4aac4f6ba1e6cce3bb4bedeb6354e266
[salt] => N#ˆ˜ºÕJ(Ò³v^ºË,˜iÚ¢E\~£É±šé7Ô
[name] => 0
[joined] => 2014-09-16 06:24:55
[group] => 1
)
Это действительно ошибка синтаксиса или проблема IDE?
Похоже, проблема IDE. Похоже, что IDE не распознает, что results () возвращает список. Я заметил, что интегрированные среды разработки часто отмечают этот тип синтаксиса (когда вы смещаете в анонимную временную переменную). Если вы хотите избавиться от предупреждения, попробуйте присвоить результат локальной переменной.
Других решений пока нет …