2012-03-29 43 views
2

我用下面的代码使用PHP如何使用cURL

$ch = curl_init('http://myPageURL/'); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
$c = curl_exec($ch); 
echo curl_getinfo($ch, CURLINFO_HTTP_CODE); 

这里的响应显示标题和其他信息,包括主体内容,以获得从请求的页面响应读取HTML主体内容。 但我只需要身体内容作为回应,那么代码是做什么的?

在此先感谢

+0

只是在curl_setopt($ ch,CURLOPT_HEADER,0)中传递第三个选项为0;它将禁用包含标题的响应。 – 2017-11-25 05:54:31

回答

2
$ch = curl_init('http://myPageURL/'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); 
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE); 
$result = curl_exec($ch); 

echo $result; 

这将使内容,我把它加在结果变量的内容,增加了一些设置,以确保接收到的内容,如果您打算在页面重定向到另一个。

3

因为你只关心身体标记,你可以做这样的事情:

<?php 
    $response = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    $start = stripos($response, "<body"); 
    $end = stripos($response, "</body"); 

    $body = substr($response,$start,$end-$start); 

    ?> 

这仅仅是一个简单的例子,你如何能做到这一点。但请注意,页面中可能有多个主体标签(如果使用iframe)。而身体标签也可以包含属性。

+0

我不能身体,所有时间都出现黑屏。 – GuRu 2016-07-25 10:56:21