PHP合并静态文件详解
2015-01-24信息快讯网
配置PHP.ini
更改配置项(必须)auto_prepend_file = "C:\xampp\htdocs\auto_prepend_file.php"
更改配置项(可选)allow_url_include = On
auto_prepend_file.php文件内容
<?php /** * 引入static文件 * @param {array|string} 相对路径 * @param {string} 当前执行脚本所在的路径__FILE__ * */ function import_static($files, $path=NULL){ // 更改当前脚本的执行路径 $old_dir = getcwd(); $tmp_dir = (isset($path)) ? dirname($path): dirname(__FILE__); chdir($tmp_dir); // 整理包含文件 if (!is_array($files)) { $tmp = array(); $tmp[] = $files; $files = $tmp; } // 发送头信息 if (isset($files[0])) { if (stripos($files[0], '.js') !== false) { $header_str = 'Content-Type: text/javascript'; } elseif (stripos($files[0], '.css') !== false) { $header_str = 'Content-Type: text/css'; } if (!ob_get_contents()) { header($header_str); } } // 引入包含文件 foreach($files as $key=>$value) { require_once($value); } // 改回当前脚本的执行路径 chdir($old_dir); } ?>
使用方法
"a.js"、"b.js"和"../c.js"是待合并的JS文件,将其合并为base.js.php,则base.js.php中的代码如下: <?php import_static(array( 'a.js', 'b.js', '../c.js', '../moduleB/all.js.php' // 也可引用.php文件 ), __FILE__); ?>
在HTML页面中使用<script type="text/javascript" src="base.js.php"></script>即可引入。
产品上线前,使用批处理文件进行处理,主要做两方面的工作
1.将"*.js.php"输出到"*.js"文件,并删除"*.js.php"。命令行:php *.js.php > *.js
2.将HTML页面中对"*.js.php"的引用替换为"*.js"。preg_replace()
PS:import_static函数解决了PHP中include()处理相对路径的问题。
以上就是本文的全部内容了,更详细的信息请期待后续文章
php使用正则表达式获取图片url的方法
php使用CURL伪造IP和来源实例详解
php+mysql实现无限分类实例详解
php截取html字符串及自动补全html标签的方法
php在linux下检测mysql同步状态的方法
php导入excel文件到mysql数据库的方法
PHP上传文件时自动分配路径的方法
PHP中使用SimpleXML检查XML文件结构实例
php静态文件返回304技巧分享
php使用fputcsv()函数csv文件读写数据的方法
php实现两表合并成新表并且有序排列的方法
PHP判断数据库中的记录是否存在的方法
php判断类是否存在函数class_exists用法分析
php中常量DIRECTORY_SEPARATOR用法深入分析
php使用ob_start()实现图片存入变量的方法
php使用date和strtotime函数输出指定日期的方法
php获取url参数方法总结
php 使用file_get_contents读取大文件的方法
php合并数组中相同元素的方法
html静态页面调用php文件的方法
PHP中file_exists()判断中文文件名无效的解决方法
php一行代码获取文件后缀名实例分析
php实现的css文件背景图片下载器代码
合并ThinkPHP配置文件以消除代码冗余的实现方法
php数组合并array_merge()函数使用注意事项