我是不是在用TwitterScript来检索Twitter的数据呢?由于推特的跨域策略,我需要设置一个php代理...首先,我做了一个简单的
<?php
$url = $_GET['url'];
readfile($url);
?>
但是我得到了这个错误
URL file-access is disabled in the server configuration
这只能通过让我的主机打开fopen()来解决,这是我不想做的。
然后我发现了这个
<?php
function get_content($url)
{
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec ($ch);
curl_close ($ch);
$string = ob_get_contents();
ob_end_clean();
return $string;
}
#usage:
$url = $_GET['url'];
$content = get_content ($url);
var_dump ($content);
?>
它解决了这个问题,但是数据现在是正确的XML,但是看起来像这样:
string(39950) "<?xml version="1.0" encoding="UTF-8"?>
<statuses type="array">
<status>
...
</statuses>"
如何从该字符串中获取XML数据?
发布于 2010-05-19 05:43:39
您的问题是,当您想要输出结果时,使用的是var_dump()。只需使用echo
即可。此外,您不需要输出缓冲来获取站点的内容。
固定代码
<?php
function get_content($url)
{
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$string = curl_exec ($ch);
curl_close ($ch);
return $string;
}
#usage:
$url = $_GET['url'];
$content = get_content ($url);
echo $content;
?>
https://stackoverflow.com/questions/2861323
复制相似问题