卷曲自动显示结果?
问题描述:
我正在使用php 5.3.2,当我执行一个curl时,它直接显示结果而不添加打印或回显函数。卷曲自动显示结果?
这里是我的代码:
<?php
$pvars = array('query' => 'ice age', 'orderby' => 'popularity');
$timeout = 30;
$myurl = "http://www.website.com";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $myurl);
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars);
$xml = curl_exec($curl);
curl_close ($curl);
?>
这有什么错我的代码,为什么它显示的结果呢?
答
默认情况下,curl扩展名输出结果。
您需要启用CURLOPT_RETURNTRANSFER
选项,就像这样:该选项启用
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
后,curl_exec
将返回的结果,而不是。
答
php 5.1 curl总是显示结果,你可以查看文档。避免简单地做:
echo "< span style='display:none'>";
$pvars = array('query' => 'ice age', 'orderby' => 'popularity');
$timeout = 30;
$myurl = "http://www.website.com";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $myurl);
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars);
$xml = curl_exec($curl);
curl_close ($curl);
echo"< /span>";
感谢布赖恩;) – Emily 2010-04-08 18:24:26
“从PHP 5.1.3,这个选项不起作用:CURLOPT_RETURNTRANSFER时使用的原始输出将始终返回”。 – Mawg 2014-05-29 16:48:47