从网站查询中获取结果数据

时间:2015-01-22 13:32:43

标签: php url

我需要从网站查询中获取结果数据。例如

http://www.uniprot.org/uniprot/?query=organism:9606+AND+gene:AEBP1+AND+reviewed:yes&sort=score&format=tab&columns=entry%20name

结果页面显示

条目名称

AEBP1_HUMAN

我需要结果,在这种情况下“AEBP1_HUMAN”将显示在我的网站上。困惑如何得到它。感谢

1 个答案:

答案 0 :(得分:0)

目标是,您可以像文件一样读取任何URL的内容,因为php支持各种协议的包装。

第一个示例使用函数file来读取整个内容并将其按行拆分为数组。

<?php
$content = file($url);
echo $content[1];
?>

在第二个示例中,您将整个内容作为字符串获取,因此您必须使用explode逐行分割它。

<?php
$content = file_get_contents($url);
$lines = explode("\n", $content);
echo $lines[1];
?>

第三个示例使用标准文件打开以及逐行读取内容的函数fgets。

<?php
$fp = fopen($url);
$fp = fopen($url, 'r');
$line = fgets($fp);
$line = fgets($fp);
echo $line;
?>

最后一个例子显示了curl的用法。不要忘记使用正确的选项。

<?php
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$content = curl_exec($ch);

$lines = explode("\n", $content);
echo $lines[1];
?>

有时,您可能会在公共托管服务器上遇到问题,这些服务器会阻止读取远程内容。