国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP合并靜態文件詳解

2024-05-04 23:27:21
字體:
來源:轉載
供稿:網友
文章詳細介紹了php合并靜態文件所需要的相關配置以及完整代碼,以及使用說明,非常的詳盡,這里推薦給有需要的小伙伴
 
 

配置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()處理相對路徑的問題。

以上就是本文的全部內容了,更詳細的信息請期待后續文章


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘孜县| 芜湖市| 金平| 姜堰市| 桐乡市| 绥江县| 金乡县| 瑞金市| 锦屏县| 高阳县| 灌南县| 扎赉特旗| 长葛市| 万年县| 汾西县| 屯门区| 进贤县| 柳林县| 文山县| 沛县| 山东省| 定边县| 东乌| 武义县| 万盛区| 惠水县| 赫章县| 石嘴山市| 水城县| 沽源县| 灯塔市| 长泰县| 清镇市| 阳谷县| 平和县| 亳州市| 金川县| 福泉市| 佛冈县| 桑日县| 同仁县|