批量向html中插入内容

php中文网
发布: 2016-06-23 13:49:47
原创
1702人浏览过

网站有很多html页面,现在需要做移动适配,需要在这些html的页面

中插入一行JS引用,
插入这样的
<script></script>

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

Trae国内版
Trae国内版

国内首款AI原生IDE,专为中国开发者打造

Trae国内版 815
查看详情 Trae国内版

回复讨论(解决方案)

foreach('路径/*.hyml') as $fn) {  file_put_contents($fn, str_replace('</head>', '<script src="m.js" type="text/javascript"></script></head>', file_get_contents($fn)));}
登录后复制

批量转换工具.exe

谢谢,我去试试

foreach('路径/*.hyml') as $fn) {  file_put_contents($fn, str_replace('</head>', '<script src="m.js" type="text/javascript"></script></head>', file_get_contents($fn)));}
登录后复制



用这个方法会提示:Invalid argument supplied for foreach(),我是这么写
foreach(('tiezi/20140610/*.html') as $fn) {  file_put_contents($fn, str_replace('</head>', '<script src="m.js" type="text/javascript"></script></head>', 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('</head>', '<script src="m.js" type="text/javascript"></script></head>', 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('</head>', '<script src="m.js" type="text/javascript"></script></head>', file_get_contents($fn)));}
登录后复制

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

php

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


html

{$jslink}

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

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

foreach(glob('tiezi/20140610/*.html') as $fn) {  file_put_contents($fn, str_replace('</head>', '<script src="m.js" type="text/javascript"></script></head>', file_get_contents($fn)));}
登录后复制



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

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

file_put_contents($fn, str_replace('</head>', "<script src='m.js' type='text/javascrip'></script>\r\n</head>",
登录后复制
 

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

file_put_contents($fn, str_replace('</head>', "<script src='m.js' type='text/javascrip'></script>\r\n</head>",
登录后复制
 


这样就可以了,非常感谢
相关标签:
HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号