我的观点中出现了错误,然后Laravel报告了这样的错误:
Unhandled Exception
Message:
htmlentities() expects parameter 1 to be string, object given
Location:
/var/www/galltransweb/galltransweb/trunk/source/laravel/html.php on line 34
Stack Trace:
#0 /var/www/galltransweb/galltransweb/trunk/source/laravel/laravel.php(40): Laravel\Error::native(2, 'htmlentities() ...', '/var/www/galltr...', 34)
#1 [internal function]: Laravel\{closure}(2, 'htmlentities() ...', '/var/www/galltr...', 34, Array)
#2 /var/www/galltransweb/galltransweb/trunk/source/laravel/html.php(34): htmlentities(Object(Code), 3, 'UTF-8', false)
#3 /var/www/galltransweb/galltransweb/trunk/source/laravel/form.php(454): Laravel\HTML::entities(Object(Code))
#4 /var/www/galltransweb/galltransweb/trunk/source/laravel/form.php(406): Laravel\Form::option(0, Object(Code), '')
#5 /var/www/galltransweb/galltransweb/trunk/source/bundles/former/src/Former/Fields/Select.php(133): Laravel\Form::select('label_type', Array, '', Array)
#6 /var/www/galltransweb/galltransweb/trunk/source/bundles/former/src/Former/ControlGroup.php(170): Former\Fields\Select->__toString()
#7 /var/www/galltransweb/galltransweb/trunk/source/bundles/former/src/Former/Former.php(196): Former\ControlGroup->wrapField(Object(Former\Fields\Select))
#8 /var/www/galltransweb/galltransweb/trunk/source/laravel/view.php(354) : eval()'d code(45): Former\Former->__toString()
#9 /var/www/galltransweb/galltransweb/trunk/source/laravel/view.php(354): eval()
#10 /var/www/galltransweb/galltransweb/trunk/source/laravel/blade.php(71): Laravel\View->get()
#11 [internal function]: Laravel\{closure}(Object(Laravel\View))
#12 /var/www/galltransweb/galltransweb/trunk/source/laravel/event.php(199): call_user_func_array(Object(Closure), Array)
#13 /var/www/galltransweb/galltransweb/trunk/source/laravel/event.php(138): Laravel\Event::fire('laravel.view.en...', Array, true)
#14 /var/www/galltransweb/galltransweb/trunk/source/laravel/view.php(325): Laravel\Event::until('laravel.view.en...', Array)
#15 /var/www/galltransweb/galltransweb/trunk/source/laravel/view.php(546): Laravel\View->render()
#16 /var/www/galltransweb/galltransweb/trunk/source/laravel/response.php(246): Laravel\View->__toString()
#17 /var/www/galltransweb/galltransweb/trunk/source/laravel/laravel.php(138): Laravel\Response->render()
#18 /var/www/galltransweb/galltransweb/trunk/source/public/index.php(34): require('/var/www/galltr...')
#19 {main}
Unhandled Exception
Message:
Module 'xdebug' already loaded
Location:
Unknown on line 0
但对我来说,我从这个报告中得不到什么,因为它没有向我显示文件以及该文件中导致错误的行。 有没有办法在该文件中显示导致错误发生的文件和行号?
答案 0 :(得分:2)
正如crynobone所说它是在堆栈跟踪中。不幸的是,这样的异常错误来自内部核心功能,它可以告诉您核心中错误发生的确切位置,但不会追溯到您在视图中可能出现的错误,以提供该行号。
第2行显示调用htmlentities()的位置并触发第1行中的错误处理程序
第3行显示调用htmlentities()的form :: option函数 第4行显示带有return语句的行,该语句实际上正在调用htmlentities()
这样可以告诉您视图中存在调用Form :: select()
的问题在源代码中查看form :: select,它是$ options数组(Form :: select()的第二个参数),它有问题。
问题在于它期待一个字符串但是正在获取一个对象,所以请仔细检查你的第二个参数是否为Form :: select()。