Не всегда Zend Studio может определить тип переменной из контекста. Например, когда тип переменной становится ясен только во время интерпретации кода. Случается очень часто, на самом деле, например, когда мы пытаемся пробежаться по rowset‘у в цикле foreach.

$usersRowset = $usersTable->fetchAll();
foreach ($usersRowset as $userRow) {
    $user->name; // автокомплит в этом случае не сработает
}

И в таких случаях такая очень важная штука как автокомплит не работает. Класс может содержать огромное количество методов, названия которых вы вряд ли помните все наизусть.

Zend Studio большинство своих автокомплитов распарсивает из комментариев PHPDoc. Поэтому, чтобы заработал автокомплит, необходимо добавить комментарий PHPDoc

$usersRowset = $usersTable->fetchAll();
/** @var $userRow Zend_Db_Table_Row */
foreach ($usersRowset as $userRow) {
    $user->name; // автокомплит работает :)
}