qq_30532781 2019-01-15 09:38 采纳率: 0%
浏览 390
已采纳

PHP本地html文件替换某个字符串 只返回一行代码

<?php
//替换txt文件中的某个字符串

//实现遍历指定文件下的目录总数量(不含子目录)
header("Content-Type: text/html; charset=gb2312");
$path = (dirname(__FILE__));//当前文件夹,比如book000文件夹
echo $path. "<br>";
if(!is_dir($path ))  //检查指定的文件是否是一个目录。如果目录存在,该函数返回 TRUE。
return null;

$handle = opendir( $path ); //opendir打开目录句柄



if (is_dir($path)){
  if ($dh = opendir($path)){
    while (($file = readdir($dh)) !== false){
      echo "filename:" . $file . "<br>";
    }
    closedir($dh);
  }
}




while (false !== ($file = readdir($handle)))  //readdir 返回目录中下一个文件的文件名
{
if ($file != '.' && $file != '..')
{
$path2 = $path . '/' . $file;//文件路径


if (is_dir( $path2 ))
{
if (!is_file($path2."/index.php")){
echo "test.txt 文件不存在。"."<br>";
}


else {
//读取文件
$file_name=$path2."/index.php";
$fp=fopen($file_name,'r');
while(!feof($fp))
{
$buffer=fgets($fp);
//echo $buffer."001<br />";
if(strstr($buffer,"长沙"))//判断是否包含某个字符串
{
//替换文件
$buffer = str_replace("长沙","",$buffer);
//$buffer = preg_replace("长沙","",$buffer);
echo $buffer."<br />";
$fp2=fopen($file_name,'w');//以写入的方式的打开
fwrite($fp2,$buffer);
echo $file."/index.php中的字符串替换,成功。"."<br>";
fclose($fp2);
}
else{
echo $file."index.php 文件不包含被替换字符"."<br>";
}
}
fclose($fp);
}
}
}
}
?>

请问各位大神,该如何替换html文件所需要替换的字符串后,输出修改后的文件

而不是只输出一行代码
  • 写回答

2条回答 默认 最新

  • WildStark 2019-01-17 00:07
    关注

    在while外面用$fopen($file_name,'w');置空内容,在while里面需要写入的地方用$fopen($file_name,'a');追加内容,详情请看PHP fopen() 函数,成功了的话求币,想下个东西

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 openwrt双栈NAT
  • ¥15 部分网页页面无法显示!
  • ¥15 怎样解决power bi 中设置管理聚合,详细信息表和详细信息列显示灰色,而不能选择相应的内容呢?
  • ¥15 QTOF MSE数据分析
  • ¥15 平板录音机录音问题解决
  • ¥15 请问维特智能的安卓APP在手机上存储传感器数据后,如何找到它的存储路径?
  • ¥15 (SQL语句|查询结果翻了4倍)
  • ¥15 Odoo17操作下面代码的模块时出现没有'读取'来访问
  • ¥50 .net core 并发调用接口问题
  • ¥15 网上各种方法试过了,pip还是无法使用