|
蓝森林 http://www.lslnet.com 2006年8月25日 8:28
[php]读取文件某一行或某一个字符应该怎么写?
fread(); fgetc(); fgets ();好像都不可以读取某一行,或某个字符?
例如:
文件名为num.txt;
内容如下:
1 |welcome|
2 |hello|
3 |hi|
如果用内容前的1,2,3进行读取文件,然后显示后面的|welcome|,|hello|,|hi|
或者是显示本行的内容都行?
另外高手们有没有完全中文的手册呀,我下载的手册是一半中文一半英文,不过有的中文手册很多函数都上面都没有,有的就一半中一半英文,
能给我留下下载地址吗?:confused: |
都是一半中文一半英文的
呵呵
file函数
自己查查..
可以读取一行进行显示
<?php
$content = file ('xx.txt');
foreach ($content as $out) {
echo $out . "<br>";
}
?>
这样可以显示成你要的那样 |
哦,试试...... |
还是不行,它把全部都读出来了
我看手册上有我样写的:
<?php
$content = file ('xx.txt');
$out="3";
foreach ($content as $out => $content) {
echo "Line #<b>{$out}</b> : " . htmlspecialchars($line) . "<br>\n";
}
?>
读出来是文档的行数! |
你要干嘛?
我没看懂意思
:( |
就是读取字符所在的那一行呀 |
程序代码
<?php
$content = file ('xx.txt');
$search_for = "3";//要取得的地方
foreach ($content as $content) {
$aa=explode("|",$content);
if($aa[0]==$search_for){
echo $aa[1];
exit;
}
}
?>
xx.txt的内容
1|fdsafdsafasf|
2|12222|
3|33344|
效率可能很低~ |
如果我要以空格为界线呢?
<?php
$content = file ('xx.txt');
$search_for = "3";//要取得的地方
foreach ($content as $content) {
$aa=explode(" ",$content);
if($aa[0]==$search_for){
echo $aa[1];
exit;
}
}
?>
xx.txt的内容
1 fdsafdsafasf
2 12222
3 33344
不行,有专门的空格代码?
没见过
|
最好别用空格没界
如果你后面有空格就麻烦了
:) |
我对php不熟悉,我看过的读取文本数据的代码几乎都是对数据进行遍历检索,甚至那种ip数据库都是这么做的-_-
对付文本数据,除非它的内容非常有规律(比如每行字数固定,而你搜索的值与行数本身有联系),或者你有自定义索引,不然我想很难进行高效搜索的 |
是呀,我就是用在IP库里的,以上的办法吧,可是可以,但要改IP库,3M呀,我得弄上好几天呀,IP都是这样写的
202.012.685 202.015.540 广东深圳
这里是举例! |
Sheneyan
在ASP里也有这种的,我见过,不过是用TAB键代替空格 |
<?php
$content = file ('xx.txt');
$search_for = "3";//要取得的地方
foreach ($content as $content) {
$aa=explode(" ",$content);
if($aa[0]==$search_for){
echo $aa[1];
exit;
}
}
?>
xx.txt的内容
1 fdsafdsafasf
2 12222
3 33344
这样行了,郁闷,真不知道怎的 |
|