Exemple détaillé de php fusionnant des fichiers statiques

怪我咯
Libérer: 2023-03-12 19:04:01
original
1096 Les gens l'ont consulté

L'article présente en détail la configuration pertinente et le code complet requis pour la fusion de fichiers statiques en PHP, ainsi que les instructions d'utilisation. Il est très détaillé. Il est recommandé ici aux amis dans le besoin

Configurer PHP. ini

Modifier les éléments de configuration (obligatoire) auto_prepend_file = "C:xampphtdocsauto_prepend_file.php"

Modifier les éléments de configuration (facultatif) allow_url_include = On

contenu du fichier auto_prepend_file.php

Le code est le suivant :

<?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], &#39;.js&#39;) !== false) {
            $header_str = &#39;Content-Type:   text/javascript&#39;;
        } elseif (stripos($files[0], &#39;.css&#39;) !== false) {
            $header_str = &#39;Content-Type:   text/css&#39;;
        }
        if (!ob_get_contents()) {
            header($header_str);
        }
    }
    // 引入包含文件
    foreach($files as $key=>$value) {
        require_once($value);
    }
    // 改回当前脚本的执行路径
    chdir($old_dir);
}
?>
Copier après la connexion

Comment utiliser

Le code est le suivant :

"a.js"、"b.js"和"../c.js"是待合并的JS文件,将其合并为base.js.php,则base.js.php中的代码如下:
<?php
    import_static(array(
        &#39;a.js&#39;,
        &#39;b.js&#39;,
        &#39;../c.js&#39;,
        &#39;../moduleB/all.js.php&#39;    // 也可引用.php文件
    ), FILE);
?>
Copier après la connexion

Utiliser

Avant que le produit ne soit mis en ligne, utilisez le fichier de traitement par lots pour le traitement, en effectuant principalement deux aspects du travail
1 Sortie "*.js.php" vers le "*. js" et supprimez "*.js.php". Ligne de commande : php *.js.php > *.js
2. Remplacez la référence à "*.js.php" dans la page HTML par "*.js". preg_replace()

PS : La fonction import_static résout le problème du traitement include() des chemins relatifs en PHP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal