在CURL中有一个参数 CURLOPT_RETURNTRANSFER :这个参数是将curl_exec()获取的信息以文件流的形式返回,而不是直接输出。例如:CURLOPT_RETURNTRANSFER参数的作用是
把CRUL获取的内容赋值到变量。它默认是 0 直接返回获取的输出的文本流,有时候,我们要拿返回值来做判断或者做其他用途的话那就不太好了。所以,有的时候我们希望返回的内容作
为变量储存,而不是直接输出,那么该怎么做呢?本篇文章主要介绍了 php curl_exec()函数 CURL获取返回值的方法
其实CURLOPT_RETURNTRANSFER 可以设置,如果设置成CURLOPT_RETURNTRANSFER 1,它就将使用PHP curl获取页面内容或提交数据,作为变量储存,而不是直接输出。
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
下面我们看两种示例,
1、curl获取页面内容, 直接输出例子:
<?php $url = 'http://www.php.cn'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_exec($ch); curl_close($ch); ?>
运行一下代码你会发现会直接输出获取的cul内容。
2、curl获取页面内容, 不直接输出例子:
<?php $url = 'http://www.php.cn'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($ch); // 已经获取到内容,没有输出到页面上。 curl_close($ch); echo $response; ?>
当我们将CURLOPT_RETURNTRANSFER 设置成 1 的时候,页面是没有输出内容的,我们将获取的内容赋值给了一个变量$response ,用 echo 输出的变量$response。
【相关文章推荐】
2.分享一个当PHP服务器不支持php curl_exec函数的解决方法
3. php curl_exec函数之获取CURL请求的输出信息
以上是 php curl_exec()函数 CURL获取返回值的方法的详细内容。更多信息请关注PHP中文网其他相关文章!