Суть проблемы - создаем php файл в любом месте проекта. Пишем туда:
<?php
echo $reviews;
Вместо того, чтобы подсветить переменную как ошибочную - она же не определена у нас, phpShtorm нормально её отображает, судя по всему он сканирует проект на предмет phpDoc для этой переменной в других файлах. Если навести мышку, то он подсказывает что переменная типа array|Review[] (в других местах она определена таким образом через phpdoc).
Эта проблема наиболее актуальна в шаблонах(Yii) так как там типы переменных задаются через phpDoc и теперь стало невозможно увидеть переменную, для который phpDoc забыли проставить. Она не подчеркивается как ошибочная(видимо так как была ранее в других шаблонах), криво работает автоподстановка функций (подстваляются функции от разных объектов), и свойств.
Мне кажется, это или какая-то настройка в PhpShtorm, которую я никак не могу найти, или какие-то изменения которые произошли в последних версиях.