"Невозможно переопределить конечный метод Exception :: __ clone ()" - PullRequest
3 голосов
/ 06 апреля 2011

Я получаю следующее странное сообщение об ошибке, когда пытаюсь запустить свой сценарий.

Я не вижу ничего, что могло бы вызвать проблему - фактически единственное, что сейчас есть в моем сценарии, которые вообще имеют дело с исключениями (они являются строительными блоками для будущего дополнения), представляют собой следующие строки:

class NoMatchingRouteException extends \RuntimeException { }

class HandlerException extends \RuntimeException { }

class HandlerMissingException extends HandlerException { }

class HandlerInaccessibleException extends HandlerException { }

Это различные исключения, которые формируют дерево различных исключений, которые я могу выбросить.

Нигде здесь я когда-либо переопределяю магический метод __clone класса Exception, поэтому я не вижу, где возникает проблема.

Я понимаю, что в моем нынешнем виде мой вопросможет быть трудно ответить - таким образом, если у вас есть какие-либо идеи, где я должен искать проблему и какой дополнительный код я должен искать для публикации, пожалуйста, опубликуйте их в комментариях, и я постараюсь ответить как можно скорее.

Спасибо.

Ответы [ 3 ]

6 голосов
/ 03 августа 2011

У меня была эта ошибка, когда я по ошибке использовал

include

для переопределенного класса исключений дважды.

Когда я вернулся наinclude_once, ошибка исчезла.

1 голос
/ 26 мая 2013

Эта ошибка появляется, когда вы определяете класс более одного раза.Поэтому избегайте определения классов внутри функций и используйте require_once для файлов .inc.

0 голосов
/ 18 августа 2011

Мне удалось избавиться от странной ошибки (хотя и случайно), когда я изменил какую-то архитектуру.Я согласен, что ошибка очень странная, и хотел бы опубликовать соответствующий класс - к сожалению, я не могу вернуться к нему (я знаю, я знаю.;).Спасибо!

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