php删除行,php如何删除某一行

php删除某一行的实现方法:首先创建一个PHP示例文件;然后定义一个delTargetLine方法;接着通过strpos函数查找目标字符串的坐标;最后删除内容所在的某一行即可。

0892182046a7a2b2609c2012d31e0dbf.png

推荐:《PHP视频教程》

PHP文件操作之,插入某行,删除某行,获取行号#在需要查找的内容后一行新起一行插入内容

function insertAfterTarget($filePath, $insertCont, $target)

{

$result = null;

$fileCont = file_get_contents($filePath);

$targetIndex = strpos($fileCont, $target); #查找目标字符串的坐标

if ($targetIndex !== false) {

#找到target的后一个换行符

$chLineIndex = strpos(substr($fileCont, $targetIndex), "\n") + $targetIndex;

if ($chLineIndex !== false) {

#插入需要插入的内容

$result = substr($fileCont, 0, $chLineIndex + 1) . $insertCont . "\n" . substr($fileCont, $chLineIndex + 1);

$fp = fopen($filePath, "w+");

fwrite($fp, $result);

fclose($fp);

}

}

19 }

#删除内容所在的某一行

function delTargetLine($filePath, $target)

{

$result = null;

25 $fileCont = file_get_contents($filePath);

$targetIndex = strpos($fileCont, $target); #查找目标字符串的坐标

if ($targetIndex !== false) {

#找到target的前一个换行符

$preChLineIndex = strrpos(substr($fileCont, 0, $targetIndex + 1), "\n");

#找到target的后一个换行符

$AfterChLineIndex = strpos(substr($fileCont, $targetIndex), "\n") + $targetIndex;

if ($preChLineIndex !== false && $AfterChLineIndex !== false) {

#重新写入删掉指定行后的内容

$result = substr($fileCont, 0, $preChLineIndex + 1) . substr($fileCont, $AfterChLineIndex + 1);

$fp = fopen($filePath, "w+");

fwrite($fp, $result);

fclose($fp);

}

}

}

#获取某段内容的行号

/**

* @param $filePath

* @param $target 待查找字段

* @param bool $first 是否再匹配到第一个字段后退出

* @return array

*/

function getLineNum($filePath, $target, $first = false)

{

$fp = fopen($filePath, "r");

$lineNumArr = array();

$lineNum = 0;

while (!feof($fp)) {

$lineNum++;

$lineCont = fgets($fp);

if (strstr($lineCont, $target)) {

if($first) {

return $lineNum;

} else {

$lineNumArr[] = $lineNum;

}

}

}

return $lineNumArr;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值