当前位置:Gxlcms > PHP教程 > 批量向html中插入内容

批量向html中插入内容

时间:2021-07-01 10:21:17 帮助过:23人阅读

网站有很多html页面,现在需要做移动适配,需要在这些html的页面中插入一行JS引用,
插入这样的


请教下能不能用php批量修改插入,因为这些页面结构都是一样的,还是只能手动一个个的修改


回复讨论(解决方案)

foreach('路径/*.hyml') as $fn) {  file_put_contents($fn, str_replace('', '', file_get_contents($fn)));}

批量转换工具.exe

谢谢,我去试试

foreach('路径/*.hyml') as $fn) {  file_put_contents($fn, str_replace('', '', file_get_contents($fn)));}



用这个方法会提示:Invalid argument supplied for foreach(),我是这么写
foreach(('tiezi/20140610/*.html') as $fn) {  file_put_contents($fn, str_replace('', '', file_get_contents($fn)));}

/** 遍历文件夹及文件类*   Date:   2013-03-21*   Author: fdipzone*   Ver:    1.0**   Funcitons*   process 遍历文件及文件夹*   handle  处理文件方法*/class FindFile{ // class start    public $files = array();    // 存储遍历的文件    protected $maxdepth;        // 搜寻深度,0表示没有限制    /*  遍历文件及文件夹    *   @param String $spath     文件夹路径    *   @param int    $maxdepth  搜寻深度,默认搜寻全部    */    public function process($spath, $maxdepth=0){        if(isset($maxdepth) && is_numeric($maxdepth) && $maxdepth>0){            $this->maxdepth = $maxdepth;        }else{            $this->maxdepth = 0;        }        $this->files = array();        $this->traversing($spath); // 遍历    }    /*  遍历文件及文件夹    *   @param String $spath 文件夹路径    *   @param int    $depth 当前文件夹深度    */    private function traversing($spath, $depth=1){        if($handle = opendir($spath)){            while(($file=readdir($handle))!==false){                if($file!='.' && $file!='..'){                    $curfile = $spath.'/'.$file;                    if(is_dir($curfile)){ // dir                        if($this->maxdepth==0 || $depth<$this->maxdepth){ // 判断深度                            $this->traversing($curfile, $depth+1);                        }                    }else{  // file                        $this->handle($curfile);                    }                }            }            closedir($handle);        }    }    /** 处理文件方法    *  @param String $file 文件路径    */    protected function handle($file){        if(strtolower(substr($file,-4))=='html'){            file_put_contents($file, str_replace('', '', file_get_contents($file)));        }    }} // class end$obj = new FindFile();$obj->process('tiezi/20140610');

不好意思,我漏了关键函数

foreach(glob('tiezi/20140610/*.html') as $fn) {  file_put_contents($fn, str_replace('', '', file_get_contents($fn)));}

可以定义一个方法,加载js文件的,如:

php

$jslink = "";
$jslink .= "";
$jslink .= "";
$jslink .= "";
$jslink .= "";
$this->assign('jslin',$jslink);


html
{$jslink}

很多页面结构一样的html?
我个人建议楼主先整理一下架构...

不好意思,我漏了关键函数

foreach(glob('tiezi/20140610/*.html') as $fn) {  file_put_contents($fn, str_replace('', '', file_get_contents($fn)));}



这个OK,现在想问下,这种添加出来的格式是:,在源文件中和JS
引用在一行,请问下怎么能让换行,这样好看点
在网上找了方法,
file_put_contents($fn, str_replace('', '\r\n',
添加'\r\n',没用

\r\n 在双引号中才会生效

file_put_contents($fn, str_replace('', "\r\n",

\r\n 在双引号中才会生效

file_put_contents($fn, str_replace('', "\r\n",


这样就可以了,非常感谢

人气教程排行