如何删除php文件的最后一行
今天就跟大家聊聊有关如何删除php文件的最后一行,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
php删除文件最后一行的方法:首先利用fopen()函数打开一个文件;然后利用fgets()函数逐行读取文件,将读取内容放入数组中;最后利用array_pops()函数删除数组中的最后一个元素即可。
array_pop() 函数删除数组中的最后一个元素。返回数组的最后一个值。如果数组是空的,或者不是一个数组,将返回 NULL。
语法:
array_pop(array)
fgets() 函数从打开的文件中返回一行。
fgets() 函数会在到达指定长度( length - 1 )、碰到换行符、读到文件末尾(EOF)时(以先到者为准),停止返回一个新行。如果失败该函数返回 FALSE。
语法:
fgets(file,length)
代码实现(仅供参考):
/*** 删除文件最后一行* @param $file_path 文件路径*/public function delLastLine($file_path) {$file = $fp = fopen($file_path, 'r') or die("Unable to open file!");while(!feof($file)) {$fp = fgets($file);if($fp) {$content[] = $fp;}}array_pop($content);fclose($file);//重新写入文件$file = fopen($file_path, 'w+');fwrite($file, implode("", $content));fclose($file);}
解析:
我的文件读取出来之后数组的最后一行保存的是false,所以if($fp)才往数组里写。如果文件中有空行,请把这个判断去掉,在对数组进行两次删末尾行的操作。如果太大到超出内存的文件,这个方法不适用。
看完上述内容,你们对如何删除php文件的最后一行有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。