我正在Laravel 6.2中工作,并且有一个基本数据库,该数据库包含一个questions
表,该表带回id,子句,标题,正文,时间戳。我在questions
处设置了一条路由,该路由调用一个控制器,该控制器查询数据库并将问题传递到视图index.blade.php
,在这里我显示带有分页的问题。问题是我可以很好地显示$questions->title
,但是当我尝试显示$question->body
时,却不断收到特定的超时错误。我已经将.ini中的max_execution从30更改为300,但无济于事。
特定错误
PHP Fatal error: Maximum execution time of 30 seconds exceeded in /home/projects/inquiry-app/vendor/symfony/polyfill-mbstring/Mbstring.php on line 603
第603行:
return (string) iconv_substr($s, $start, $length, $encoding);
Web.php
Route::get('/', function () {
return view('welcome');
});
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
Route::resource('questions', 'QuestionsController');
QuestionsController
class QuestionsController extends Controller
{
public function index()
{
$questions = Question::latest()->paginate(2);
return view('questions.index', compact('questions'));
}
}
index.blade.php
@foreach($questions as $question)
<div class="media">
<div class="media-body">
<h3 class="mt-0">{{$question->title}}</h3>
{{-- <p>{{Str::limit($question->body, 10)}}</p>--}}
</div>
</div>
<hr>
@endforeach
关于为什么会出现此错误的任何想法?如果$ question-> body行被注释掉,页面将加载。
我在Ubuntu 19.04,Laravel 6.2,php7.3(FPM / FastCGI)上
谢谢。
回答我自己的问题。当我从$question->body
行中删除{{Str :: limit}}时,它可以正常工作。我不确定为什么会引起问题,但是通过删除部分代码,它现在似乎可以正常工作。