如何通过cURL [php]显示特定URL的html标记

时间:2014-02-11 07:19:58

标签: php html curl

我正在尝试使用cURL获取特定URL的内容

$ch= curl_init();
curl_setopt($ch, CURLOPT_URL, 
   "http://stackoverflow.com//");
$output= curl_exec($ch);
curl_close($ch);

现在我想像文本一样显示标记,我写下面的代码片段:

<div class="content">
    <pre>
       <?php
            echo $output;
        ?>
    </pre>
</div> 

但是当我试图显示标记时,没有div, pre而其他人则是标记的元素。我只能看到stackoveflow.com。如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您需要使用htmlentities()功能包围$output以在页面上呈现标记输出。

或者,您可以使用htmlspecialchars(),因为前者非常重。

所以它会像

<div class="content">
    <pre>
       <?php
            echo htmlentities($output);
        ?>
    </pre>
</div> 

<强> EDIT :

  

它不起作用。此页面将像以前一样呈现。

这是因为您需要将RETURNTRANSFER cURL 参数设置为1。

代码......

<?php
$ch= curl_init();
curl_setopt($ch, CURLOPT_URL,"http://stackoverflow.com/");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$output= curl_exec($ch);
curl_close($ch);
?>
<div class="content">
    <pre>
       <?php
       echo htmlentities($output);
       ?>
    </pre>
</div>