Поймать исключение отражения, когда родительский класс не найден - PullRequest
1 голос
/ 04 июля 2010

Сценарий: у меня есть класс, который расширяет другой класс, но родительский класс не определен (по любой причине). Я пытаюсь получить ReflectionClass дочернего класса. Когда я делаю это, я получаю исключение Class Not Found для родительского класса. Однако я не могу поймать это исключение. Что я делаю не так?

Например ...

<?php
class Foo extends Bar { }

try
{
    $class = new ReflectionClass('Foo');
    echo 'I\'ve reflected "Foo" successfully!';
}
catch (Exception $e)
{
    echo 'My exception handler';
}

Результатом вышеприведенного кода является распечатка класса 'Bar' not found исключение. Почему в моем операторе catch не указано исключение?

спасибо, Kyle

1 Ответ

0 голосов
/ 04 июля 2010

Это связано с тем, что исключение произошло в этой строке, а не в строках после try:

class Foo extends Bar { }

Я попробовал это сделать, объявление класса в try-catch тоже не будет работать.Убедитесь, что Bar включен первым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...