Php 超过了Laravel 5 barryvdh/Laravel DOMPF时间
我在我的项目中使用DOMPDF,在我的系统中实现之前,我做了一些测试,但每次我运行服务时,它显示超过了60秒, 首先,我创建了一个控制器:Php 超过了Laravel 5 barryvdh/Laravel DOMPF时间,php,pdf,laravel-5,Php,Pdf,Laravel 5,我在我的项目中使用DOMPDF,在我的系统中实现之前,我做了一些测试,但每次我运行服务时,它显示超过了60秒, 首先,我创建了一个控制器: public function invoice() { $data = $this->getData(); $date = date('Y-m-d'); $invoice = "2222"; $view = \View::make('pdf.invoice', compact
public function invoice()
{
$data = $this->getData();
$date = date('Y-m-d');
$invoice = "2222";
$view = \View::make('pdf.invoice', compact('data', 'date', 'invoice'))->render();
$pdf = \App::make('dompdf.wrapper');
$pdf->loadHTML($view);
return $pdf->stream('invoice');
}
public function getData()
{
$data = [
'quantity' => '1' ,
'description' => 'some ramdom text',
'price' => '500',
'total' => '500'
];
return $data;
}
然后我添加路线:
Route::get('pdf', 'PdfController@invoice');
我添加的最后一部分是视图中的一个文件夹,名称为pdf,文件名为invoice.blade.php:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Example 2</title>
<link rel="stylesheet" href="{{asset('plugins/bootstrap/css/bootstrap.css')}}">
</head>
<body>
<main>
<div id="details" class="clearfix">
<div id="invoice">
<h1>INVOICE {{ $invoice }}</h1>
<div class="date">Date of Invoice: {{ $date }}</div>
</div>
</div>
<table border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th class="no">#</th>
<th class="desc">DESCRIPTION</th>
<th class="unit">UNIT PRICE</th>
<th class="total">TOTAL</th>
</tr>
</thead>
<tbody>
<tr>
<td class="no">{{ $data['quantity'] }}</td>
<td class="desc">{{ $data['description'] }}</td>
<td class="unit">{{ $data['price'] }}</td>
<td class="total">{{ $data['total'] }} </td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2"></td>
<td >TOTAL</td>
<td>$6,500.00</td>
</tr>
</tfoot>
</table>
</body>
<script src="{{asset('plugins/jquery/js/jquery-2.1.4.js')}}"></script>
<script src="{{asset('plugins/bootstrap/js/bootstrap.js')}}" ></script>
</html>
例2
发票{{$INVOICE}
发票日期:{{$Date}
#
描述
单价
全部的
{{$data['quantity']}
{{$data['description']}
{{$data['price']}
{{$data['total']}
全部的
$6,500.00
URL:http://localhost:8000/pdf
如果有人能告诉我我的错误在哪里,我真的很感激。您的脚本执行了超过60秒,并被终止,与Laravel无关,与php无关。默认限制为60秒,存储在php.ini文件中。要临时延长时间限制,您可以在当前脚本中使用以下行if代码,但也可以尝试优化脚本(如果可能) 您可以设置时间限制(0);这样脚本将永远运行- 但是,不建议这样做,您的web服务器可能会捕获您 通过强制HTTP超时(通常约5分钟)退出。你可以 也使用 更新 这可能是名称空间问题。试试这个
$pdf = PDF::loadHTML('your view here ');
return $pdf->stream();
您的脚本执行了60秒以上,并被终止,与Laravel无关,与php无关。默认限制为60秒,存储在php.ini文件中。要临时延长时间限制,您可以在当前脚本中使用以下行if代码,但也可以尝试优化脚本(如果可能) 您可以设置时间限制(0);这样脚本将永远运行- 但是,不建议这样做,您的web服务器可能会捕获您 通过强制HTTP超时(通常约5分钟)退出。你可以 也使用 更新 这可能是名称空间问题。试试这个
$pdf = PDF::loadHTML('your view here ');
return $pdf->stream();
我不确定这是否是真正的问题,相反,我认为脚本在单个数组上执行任务花费了太多时间。是的,它花费了太多时间,这就是为什么需要增加脚本的最大执行时间。我正在检查php.ini文件,发现了这个问题,max_execution_time=120。显然问题不在于执行时间,我运行了几次,但sameI还是告诉你了。这是一个结果,而不是原因。我不确定这是否是真正的问题,相反,我认为脚本在单个数组上执行任务花费了太多的时间。是的,它花费了太多的时间,这就是为什么需要增加脚本的最大执行时间。我正在检查php.ini文件,发现了这个问题,max_execution_time=120。显然问题不在于执行时间,我运行了几次,但sameI还是告诉你了。这是结果,而不是原因。您确定您正确设置了laravel dompdf吗?为什么不直接使用
PDF::loadView('PDF.invoice',$data)代码>如文档中建议的那样?您确定正确设置了laravel dompdf吗?为什么不直接使用PDF::loadView('PDF.invoice',$data)代码>像文档中建议的那样?
$pdf = PDF::loadHTML('your view here ');
return $pdf->stream();