file()函数问题~~~~~~~~~~~~~~~~~ 分不够再加~~~~~~~~~~~~~~
一般情况下file($url)返回的是一个数组!~~
如果我仅想读取出$url内容的前两行就停止读取$url,我该如何做呢?或用什么函数来代替呢?
要是有这样的函数就好了:file($url, $limit);
另外烦请各位老大看看下面的贴子,我贴好久就没人回答了 :-)
http://community.csdn.net/Expert/TopicView1.asp?id=3897074
http://community.csdn.net/Expert/TopicView1.asp?id=3901964
在线等待,顶者有分,不够再加!
问题点数:30、回复次数:7Top
1 楼surfchen(冲浪)回复于 2005-04-03 10:36:36 得分 30
function getFile($url,$limit)
{
$file=file($url);
for ($i=0;$i<$limit;$i++)
{
$content.=$file[$i];
}
return $content;
}Top
2 楼zhutimy(慢刀手)回复于 2005-04-03 10:59:12 得分 0
楼上已经做出来了,Top
3 楼zhiin(┈ Jcan ┈)回复于 2005-04-03 10:59:27 得分 0
TO surfchen(冲浪) :
不符合题意! :-)
"仅想读取出$url内容的前两行就停止读取$url"
如果把$url全部读取出来会浪费资源!```` 我只需$url内容的前两行Top
4 楼surfchen(冲浪)回复于 2005-04-03 11:13:51 得分 0
阅读 fgets函数Top
5 楼zhutimy(慢刀手)回复于 2005-04-03 11:20:39 得分 0
不然你就这样了,我测试一下,速度跟冲浪的差不多
<?php
$handle = fopen ("http://www.163.com", "r");
while (!feof ($handle)) {
$buffer = fgets($handle, 4096);
echo $buffer;
}
fclose ($handle);
?>Top
6 楼zhiin(┈ Jcan ┈)回复于 2005-04-03 11:37:52 得分 0
<?php
$handle = fopen ("http://www.163.com", "r");
for ($i=0;!feof ($handle);$i++) {
$buffer = fgets($handle, 4096);
echo $buffer;
if($i==2) break;
}
fclose ($handle);
?>
Top
7 楼zhiin(┈ Jcan ┈)回复于 2005-04-03 11:40:18 得分 0
应该:
<?php
$handle = fopen ("http://www.163.com", "r");
for ($i=0;!feof ($handle);$i++) {
if($i==2) break;
$buffer = fgets($handle);
echo $buffer;
}
fclose ($handle);
?>Top




