Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么我从html生成的pdf文档看起来很奇怪?_Php_Laravel_Dompdf - Fatal编程技术网

Php 为什么我从html生成的pdf文档看起来很奇怪?

Php 为什么我从html生成的pdf文档看起来很奇怪?,php,laravel,dompdf,Php,Laravel,Dompdf,我制作了一个简单的laravel应用程序,通过url从页面创建pdf文档。但是我的pdf没有从页面中获得正确的样式,有时看起来很奇怪。我做错了吗 这里是google.com 这就是我对dompdf所做的 $pdf->loadHTML($content); <--- HTML getted with curl $pdf->setPaper('A2', 'portrait'); $output = $pdf->output(); 您可能无法通过卷曲获得页面的样式 查看这是

我制作了一个简单的laravel应用程序,通过url从页面创建pdf文档。但是我的pdf没有从页面中获得正确的样式,有时看起来很奇怪。我做错了吗

这里是google.com

这就是我对dompdf所做的

$pdf->loadHTML($content); <--- HTML getted with curl
$pdf->setPaper('A2', 'portrait');
$output = $pdf->output();

您可能无法通过卷曲获得页面的样式

查看这是否有助于提供“$content”变量的所有内容


嘿,谢谢你。是的,我正在解析字符串中的所有链接,并将主机添加到所有href和src(我没有粘贴整个代码,因为太多了)。。。但pdf看起来仍然像一个“一栏”页面或类似的东西。当我回显$content变量时,页面看起来很完美,但当我把它放在pdf上时,页面变得凌乱。你得到的输出到底出了什么问题?“有时看起来很奇怪”是不够的信息。我不能准确地说,因为它随页面的变化而变化。如果我只是对$content做一个回应,那么浏览器上的一切看起来都很好。可能是正常的吗?这里是google.com。
protected function get_web_page( $url )
{
    /**
    * Send a GET requst using cURL
    * @param string $url to request
    * @param array $user_agent values to send
    * @param array $options for cURL
    * @return string
    */
    $user_agent='Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0';

    $options = array(

        CURLOPT_CUSTOMREQUEST  =>"GET",        //set request type post or get
        CURLOPT_POST           =>false,        //set to GET
        CURLOPT_USERAGENT      => $user_agent, //set user agent
        CURLOPT_RETURNTRANSFER => true,     // return web page
        CURLOPT_HEADER         => false,    // don't return headers
        CURLOPT_FOLLOWLOCATION => true,     // follow redirects
        CURLOPT_AUTOREFERER    => true,     // set referer on redirect
        CURLOPT_CONNECTTIMEOUT => 10,      // timeout on connect
        CURLOPT_TIMEOUT        => 10,      // timeout on response
        CURLOPT_MAXREDIRS      => 10,       // stop after 10 redirects
    );

    $ch      = curl_init( $url );
    curl_setopt_array( $ch, $options );
    $content = curl_exec( $ch );
    $err     = curl_errno( $ch );
    $errmsg  = curl_error( $ch );
    $header  = curl_getinfo( $ch );
    curl_close( $ch );

    $header['errno']   = $err;
    $header['errmsg']  = $errmsg;
    $header['content'] = $content;
    return $header;
}