[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Exception VS trigger_error при дебаггинге
Страницы: 1, 2, 3, 4
Dezigo
Самая весомая причина - это дебаг.
А иммено узнать где упала ошибка и на каком это уровне было.
Например:

#0 /Users/dezigo/Sites/zend_system/vendor/zendframework
/zendframework/library/Zend/Mvc/Controller/Abstra
ctActionController.php(111): Auth\Controller\AuthController->registerAction()

#1 [internal function]: Zend\Mvc\Controller
\AbstractActionController->onDispatch(Object(Zend\Mvc\MvcEvent)) #2 /Users
/dezigo/Sites/zend_system/vendor/zendframework/zendframework/library
/Zend/EventManager/EventMan ager.php(468): call_user_func(Array,
Object(Zend\Mvc\MvcEvent))

#3 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/EventManager/EventMan ager.php(207): Zend\EventManager
\EventManager->triggerListeners('dispatch', Object(Zend\Mvc\MvcEvent),
Object(Closure))

#4 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/Mvc/Controller/Abstra ctController.php(117): Zend\EventManager
\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent),
Object(Closure))

#5 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/Mvc/DispatchListener. php(114): Zend\Mvc\Controller
\AbstractController->dispatch(Object(Zend\Http\PhpEnvironment\Request),
Object(Zend\Http\PhpEnvironment\Response))


#6 [internal function]: Zend\Mvc\DispatchListener->onDispatch(Object(Zend
\Mvc\MvcEvent))

#7 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/EventManager/EventMan ager.php(468): call_user_func(Array,
Object(Zend\Mvc\MvcEvent))

#8 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/EventManager/EventMan ager.php(207): Zend\EventManager
\EventManager->triggerListeners('dispatch', Object(Zend\Mvc\MvcEvent),
Object(Closure))

#9 /Users/dezigo/Sites/zend_system/vendor/zendframework/zendframework
/library/Zend/Mvc/Application.php(3 09): Zend\EventManager
\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent),
Object(Closure))

#10 /Users/dezigo/Sites/zend_system/public/index.php(17): Zend\Mvc
\Application->run()


#11 {main}dezigo


Это пример из zend2.
Здесь наглядно видно - как именно выглядит объект и что он собирался делать перед смертью.

Ещё один из лучших способов, это серилизовать объект и сохранить его в лог.
Тогда можно посмотреть, в логах, какая именно была ошибка со всеми данными объекта.


--
Из этого куска дампа объекта видно, какие свойства объекта были на тот момент.

object(Zend\View\Model\ViewModel)#293 (7) { 
["captureTo":protected]=> string(7) "content" ["children":protected]=> array(0)
{ } ["options":protected]=> array(0) { } ["template":protected]=> string(16)
"/auth/auth/login" ["terminate":protected]=> bool(false)
["variables":protected]=> object(Zend\View\Variables)#292 (2) {
["strictVars":protected]=> bool(false) ["storage":"ArrayObject":private]=>
array(3) { ["form"]=> object(Auth\Form\LoginForm)#307 (27) {
["attributes":protected]=> array(2) { ["method"]=> string(4) "post"
["name"]=> string(9) "loginform" } ["bindAs":protected]=> int(17)
["bindOnValidate":protected]=> int(0) ["baseFieldset":protected]=> NULL
["data":protected]=> NULL ["filter":protected]=> object(Zend\InputFilter
\InputFilter)#316 (6) { ["factory":protected]=> object(Zend\InputFilter
\Factory)#317 (3) { ["defaultFilterChain":protected]=> object(Zend\Filter
\FilterChain)#318 (3) { ["plugins":protected]=> NULL ["filters":protected]=>
object(Zend\Stdlib\PriorityQueue)#319 (3) { ["queueClass":protected]=>
string(28) "Zend\Stdlib\SplPriorityQueue" ["items":protected]=> array(0) { }
["queue":protected]=> NULL } ["options":protected]=> array(0) { } }
["defaultValidatorChain":protected]=> object(Zend\Validator
\ValidatorChain)#320 (3) { ["plugins":protected]=> NULL
["validators":protected]=> array(0) { } ["messages":protected]=> array(0) { }
} ["inputFilterManager":protected]=> NULL } ["data":protected]=> NULL
["inputs":protected]=> array(2) { ["username"]=> object(Zend\InputFilter\Input)#321 (11) { ["allowEmpty":protected]=> bool(false)
["continueIfEmpty":protected]=> bool(false) ["breakOnFailure":protected]=>
bool(false) ["errorMessage":protected]=> NULL ["filterChain":protected]=>
object(Zend\Filter\FilterChain)#322 (3) { ["plugins":protected]=> NULL
["filters":protected]=> object(Zend\Stdlib\PriorityQueue)#323 (3)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.