① php如何实现读取指定文件内的某些内容
这个文件,如果是用php 语法写的,你可以用include();将此文件包含进来,
这样的话,这里文件里面$index="132233123";
你就可以调用$index变量了
如果你写的只是一个文件话,建议你用以下方式进行判断
这个下面是我写的一个读取文件的函数,
function Read_Url($file_url){
$str="";
$handle = @fopen($file_url, "r");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
$str .= $buffer." ";
}
return $str;
fclose($handle);
}else{
Msg("文件无法打开");
}
}
② PHP里如何读取文件的指定一行
<?php
$c=getLine('./a.txt',10);//读取a.txt文件第10行内容
echo$c;
/**
*获取指定行内容
*
*@param$file文件路径
*@param$line行数
*@param$length指定行返回内容长度
*/
functiongetLine($file,$line,$length=4096){
$returnTxt=null;//初始化返回
$i=1;//行数
$handle=@fopen($file,"r");
if($handle){
while(!feof($handle)){
$buffer=fgets($handle,$length);
if($line==$i)$returnTxt=$buffer;
$i++;
}
fclose($handle);
}
return$returnTxt;
}
③ php涓鐢╢gets()璇诲彇鏂囦欢鏁版嵁闂棰桡纴姹傛寚鏁欙紒
fgets()鏄璇讳竴琛
feof()鏄鍒ゆ柇鏄钖﹀埌浜嗘枃浠跺熬
while()鏄寰鐜锛屾病链夊埌鏂囦欢灏惧氨缁х画姣忔′竴琛岀殑璇诲幓
echo锛岃緭鍑哄洖鏄
④ php读取txt文件指定行的内容并显示
<?php
$handle = @fopen("1.txt", "r");
$str="";
if ($handle) {
for($i=0;$i++;$i<3){
$buffer = fgets($handle, 4096);
if(strpos($buffer,"aaaa")!==false){
$str.= $buffer;
}elseif(strpos($buffer,"bbbb")!==false){
$str.= "[".$buffer."]";
}elseif(strpos($buffer,"cccc")!==false){
$str.= "(".$buffer.")";
}
}
fclose($handle);
}
echo $str;
?>
⑤ php逐行读取文件,逐行修改文件,删除指定行
修改和删除指定行,我们一般用file将文件内容读取到数组中,根据数字索引比较容易修改,但是你要求用文件指针,这个比较麻烦,不管你用的是filesystem的函数还是spl类函数,都不可避免一个问题,对一个文件流操作,最多替换流中间的某一段内容,不可能实现插入,又不是c语言的链表,
//修改第二行内容
$f=fopen('test.txt','r+');
$i=1;
while(!feof($f)){
if($i==2){
fseek($f,0,SEEK_CUR);
fwrite($f,'aad');//这里的修改是替换形式,如果修改后这一行的长度比原来短,那么可以用空格填充到原来长度,这样实现修改,而且不影响后面的内容,但是修改后的比原来长就麻烦了,
break;
}
fgets($f);
$i++;
}
fclose($f);
//删除行同修改行一样,只不过是将原来行替换为同等长度的空格串
$f=fopen('test.txt','r+');
$j=1;
while(!feof($f)){
if($j==2){
$row=fgets($f);
$len=strlen($row);
echoftell($f)-$len."<br>";
fseek($f,ftell($f)-$len);
fwrite($f,str_pad('',$len,''));
break;
}
fgets($f);
$j++;
}
fclose($f);