|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
ShamanVoodoo |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 74 Регистрация: 17.10.2007 Где: Сергиев Посад Репутация: нет Всего: -3 |
Пользовательские функции не проверяют типы принимаемых аргументов, для того чтобы это обойти я использую обработчик. Проблема в том, что в случае ошибки проверки возникает ошибка E_ERROR и ниже идуший не выполняется, приходится оборачивать каждую фунцию проверяющую типы аргументов в try catch , а мне хотелось бы чтобы выводилась ошибка E_NOTICE и код продолжал свое выполнение.
Посоветуйте что делать? Использовать set_exception_handler('exception_handler')? Может у кого-то есть в наработки в данном направлении? Буду благодарен за любую помощь!
|
|||
|
||||
Arantir |
|
||||
Рыбак без удочки Профиль Группа: Участник Сообщений: 960 Регистрация: 18.11.2012 Репутация: нет Всего: 55 |
Замените
php все же язык без строгой типизации, так что, в отличии от языков со строгой типизацией, неправильный тип аргумента тут не является несовместимым с жизнью и в принципе можно выдавать только Notice. Это сообщение отредактировал(а) Arantir - 26.1.2013, 16:50 -------------------- interface Жопа { // ATTENTION: has to be implemented by every class of the project for proper project work } |
||||
|
|||||
ShamanVoodoo |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 74 Регистрация: 17.10.2007 Где: Сергиев Посад Репутация: нет Всего: -3 |
Arantir > не работает
Выдает Notice: Argument 1 passed to test() must be an instance of strict, double given, called in ...\www\index.php on line 94 and defined; Level: 4096; File: ...\www\index.php; Line: 92 in ...\www\core\class.TypeHint.php on line 132 Catchable fatal error: Argument 1 passed to test() must be an instance of strict, double given, called in ...\www\index.php on line 94 and defined in ...\www\index.php on line 92 и дальше не выполняется Смысл данного решения в выборочной проверке аргументов, которую до этого приходилось проверять в самом коде функции. Сама же проверка требуется чтобы не выполнять код функции впустую, создавая при этом доп. нагрузку. Кто |
|||
|
||||
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Extensions | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |