【原创】使用PHP批量替换静态HTML中违规内容

今天突然接到集团的要求,因为新广告法规出台,要求本人所在的下属公司删除官方网站里面的违反规定的内容,因为现在使用的官网其实就是一些静态页面,一共不到30个页面,一开始打算用Dreamweaver批量替换下就完了,但是接到文档一看就傻眼了,几十个关键文字都要整改,就算是用Dreamweaver也得整半天,于是打算写个简单的php脚本解决这个问题。废话不多说,开工!

思路如下,把所有的静态页面放在php项目下的某个文件夹中,然后利用php读取此文件夹下的所有文件并获取文件名存成一个数组,循环数组使用file_get_contents读取内容,然后把所有要修改的关键字放在一个数组中循环使用str_replace进行修改,最后使用file_put_contents()把修改后的内容写入原来的文件。

由于只是个简单的脚本,所以也懒得判断参数类型了,使用时自己注意下就完了,也没有封装成类,就是写了两个方法,一个获取文件名,一个修改内容。测试用程序如下。

<?php

/**

* Created by PhpStorm.

* User: meng

* Date: 16/10/17

* Time: 下午5:14

*/

function getfile($name){

$handle = opendir($name);

$filearr = array();

while (($file = readdir($handle)) !== false){

if($file != ‘.‘ && $file != ‘..‘) {

array_push($filearr,$file);

}

}

closedir($handle);

return $filearr;

}

function change($folder,$filearr,$changetext){

foreach ($filearr AS $key=>$value){

$filename = $folder.‘/‘.$value;

$content = file_get_contents($filename);

foreach($changetext AS $key=>$val){

$content = str_replace($key, $val, $content);

}

file_put_contents($filename, $content);

sleep(1);

}

}

$changetest = array(

‘最大的‘=>‘‘,

‘最牛的‘=>‘‘,

‘首家‘=>‘第一‘

);

$name = ‘change‘;

$filesarr = getfile($name);

change($name, $filesarr, $changetest);

时间: 2024-10-13 13:34:38

【原创】使用PHP批量替换静态HTML中违规内容的相关文章

Linux命令行批量替换多文件中的字符串【转】

Linux命令行批量替换多文件中的字符串[转自百度文库] 一种是Mahuinan法,一种是Sumly法,一种是30T法分别如下: 一.Mahuinan法: 用sed命令可以批量替换多个文件中的字符串.sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录` 例如:我要把mahuinan替换为huinanma, 执行命令:sed -i "s/mahuinan/huinanma/g" 'grep mahuinan -rl /www' 这是目

批量替换某个表中的字段字符串

declare @curTable nvarchar(500), @FilterStr nvarchar(500);--过滤字符串 字符串及之后的数据将被替换为空 set @FilterStr='<'; set @curTable='B07'; DECLARE @SQLList nvarchar(4000), @tableName VARCHAR(10), @name VARCHAR(10), @type VARCHAR(10); set @SQLList=''; BEGIN -- 定义游标.

用正则表达式替换指定标签中的内容

用正则表达式替换指定标签中的内容,也是在工作中遇到的就顺手记了下来 string sXML = "ABCDEFCSF<p>123123</p>KOPL";//现在我要去掉P标签中的内容,实现 ABCDEFCSFKOPL这样的效果. 引入:using System.Text.RegularExpressions; Regex rg = new Regex("<pict>.*</pict>"); sXML = rg.Rep

PHP批量替换MySql数据库中的数据内容(替换MySql数据库内容源码)

PHP批量替换MySql数据库内容 UTF-8 1.0版 <?php //声明 //1.本源码开发意图:作者在使用一些CMS建站的时候发现很多CMS把网址写入到数据库了,如果换网址,那么就需要更新数据库中的老网址,如果一个一个修改,很不方便,所以开发此源码,供大家学习或使用: //2.源码开发者:杨波: //3.源码开发者联系QQ:773003231: //4.源码开发者博客:http://www.cnblogs.com/phpyangbo/: //5.源码开放性:任何人都可以随意更改或使用本源

linux 批量替换所有文件中包含的字符串

sed -i "s/原来字符串/新字符串/g" `grep 原来字符串 -rl .` 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 转: linux下批量替换文件内容 1.网络上现成的资料 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldstring/newstring/g&

Python-工具-批量替换EXCLE文件中某列的值

由于工作的原因,经常需要查询统计各地数据,有时结果收集上来后发现需要对其中某些列的数据进行转换,例如将代码值转成中文含义. 重新统计需要花费时间和运维精力,所以自己写了一个简单的替换脚本.当然,理想状态还是在查询统计前就把要求确认. 下面的代码复制到.py文件中,安装完成Python后,安装必要的包(xlrd.xlutils)就可以使用了.注意的是,需要替换的所有文件需和脚本文件同一目录. (脚本只能处理xls扩展名的文件,因为对xlsx处理可用的Python包没找到,但是xlsx的可以批量替换

shell脚本批量替换文件名和文件的内容

方法1: 这两天在做camera bringup的时候,需要添加chromatic文件,由于有需要太多的文件里面的内容进行替换,手工一个个改文件配置有点不太实际,所以google了一下,找到批量替换文件内容的好方法,命令结构如下: grep "被替换的字符串" * -R | awk -F: '{print $1}' | sort | uniq |xargs sed-i 's/被替换的字符串/替换后的字符串/' 例如:如果我们需要将当前目录下所有文件中的250替换为38,则,命令为: g

SQL Server批量替换所有表中内容sql语句-清楚挂马

有朋友经常会发现自己的数据库所有的内容给插入了一些代码,如果要一个个表一个个记录去删除,太麻烦了,下面我在在网上找到一个可以批量删除的方法,实际上是批量把那段恶意代码替换,非常快速. declare @t varchar(255),@c varchar(255) declare table_cursor cursor for select a.name,b.name from sysobjects a,syscolumns b ,systypes c where a.id=b.id and a.

mysql批量替换zencart数据中的反斜杠\

update products_description set products_description=replace(products_description, "\\'","'"); update products_description set products_name=replace(products_name, "\\'","'"); update categories_description set categ