php如何删除文件最后一行内容

发布时间:2024-04-04 点击:109
php删除文件最后一行内容的方法:首先利用fopen()函数打开一个文件;然后利用fgets()函数从打开的文件中读取一行内容,并将其保存到数组中;最后利用array_pop()函数删除数组中的最后一个元素即可。
相关函数:
(推荐教程:php图文教程)
fopen() 函数打开一个文件或 url。
如果 fopen() 失败,它将返回 false 并附带错误信息。您可以通过在函数名前面添加一个 '@' 来隐藏错误输出。
fgets() 函数从打开的文件中返回一行。
fgets() 函数会在到达指定长度( length – 1 )、碰到换行符、读到文件末尾(eof)时(以先到者为准),停止返回一个新行。如果失败该函数返回 false。
array_pop() 函数删除数组中的最后一个元素。返回数组的最后一个值。如果数组是空的,或者不是一个数组,将返回 null。
(学习视频推荐:php视频教程)
代码实现:
/ * 删除文件最后一行 * @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)才往数组里写。如果文件中有空行,请把这个判断去掉,在对数组进行两次删末尾行的操作。如果太大到超出内存的文件,这个方法不适用。

企业起域名方法有哪些?新手要掌握什么?
如何租用云服务器比较好
四声母域名和四字母域名有什么区别?
浅析市面上的电脑操作系统有哪些
宝塔面板负载均衡怎么用
新站收录后如何继续操作
nginx发布静态文件出404
百度云服务器好便宜