每次我有一个错误,例如:试图访问一个非对象的属性,我得到这个消息:
ob_end_flush(): failed to send buffer of zlib output compression (0)
open: /home/admin/domains/mysite/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php
$previous = null;
$obStatus = ob_get_status(1);
while (($level = ob_get_level()) > 0 && $level !== $previous) {
$previous = $level;
if ($obStatus[$level - 1]) {
if (version_compare(PHP_VERSION, '5.4', '>=')) {
if (isset($obStatus[$level - 1]['flags']) && ($obStatus[$level - 1]['flags'] & PHP_OUTPUT_HANDLER_REMOVABLE)) {
ob_end_flush();
}
}
}
}
我尝试设置在php.ini
:
zlib.output_compression = Off
zlib.output_handler =
但它没有帮助。
我使用Laravel 4.1
有人知道如何解决这个问题吗?
如果你在视图中使用@ section,那么在section下面使用@stop来停止section区域
不确定这是否有帮助,但我遇到了这个问题,并认为我会分享为我修复它的方法,具有相同的错误。这是由于试图设置通过节调用传入的空变量而引起的。要修复它,只需使用isset检查。
@isset($var)
@section('header', $var)
@endisset
不确定这是否对任何人有帮助,我在创建pdf时使用laravel收到此错误。解决方案是将控制器中返回的2个数据变量添加到view-pdf.blade.php中。
检查您的刀片文件中是否缺少@end
语句,如@endsection
此错误发生在生产环境中,如果您使用的是Laravel的任何版本,则很容易修复。我通过编辑env
文件解决了这个问题,确保你设置Production
而不是local
APP_ENV=Production