PHP PHP - Incluir todo un directorio de archivos

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP PHP - Incluir todo un directorio de archivos相关的知识,希望对你有一定的参考价值。

<?php
function include_dir($path,$read=false) {
    //separador de directorios
    $s = '/';
    //vemos si es la primera vez que usamos la funcion
    if(!$read) {
        //obtenemos los dos ultimos caracteres
        $tree = substr($path,-2);
        if($tree=='.*') {
            //eliminamos el asterisco y activamos la recursividad
            $path = preg_replace('!\.\*$!','',$path);
            $read = true;
        }
        //obtenemos el document_root del archivo en caso de usarse
        $path = preg_replace('!^root\.!',$_SERVER['DOCUMENT_ROOT'].$s,$path);
        //cambiamos el punto por el separador
        $path = str_replace('.',$s,$path);
    }
    //abrimos el directorio
    if ($handle = opendir($path)) {
        while (false !== ($file = readdir($handle))) {
            if ($file != "." && $file != "..") {
                //si es un directorio lo recorremos en caso de activar la recursividad
                if(is_dir($path.$s.$file) and $read) {
                    include_dir($path.$s.$file,true);
                } else {
                    $ext = substr(strtolower($file),-3);
                    if($ext == 'php') @include_once($path.$s.$file);
                }
            }
        }
        //cerramos el directorio
        closedir($handle);
    }
}

//ejemplos
//incluir el directorio "lib"
include_dir('lib');
//incluir todos los archivos que contenga "lib" esten en ese directorio o dentro de otros
include_dir('lib.*');
//incluir el directorio "lib" con ruta absoluta
include_dir('root.lib');
//incluir todos los archivos que contenga "lib" esten en ese directorio o dentro de otros
include_dir('root.lib.*');

?>

以上是关于PHP PHP - Incluir todo un directorio de archivos的主要内容,如果未能解决你的问题,请参考以下文章

Todo深入PHP内核系列

TODO:当PHP遇上IIS

TODO:macOS编译PHP7.1

TODO任务netbeans php

php Todo WP_query $ args

php Todo WP_query $ args