Search code examples
phprequire

PHP use array to require php files


I have saw this answer about require multiple php files, I want to do it use class,like this

class Core
{
    function loadClass($files)
    {
        $this->files = func_get_args();
        foreach($files as $file) {
            require dirname(__FILE__)."/source/class/$file";
        }
    }
}

But when I use

$load = new Core;
$load->loadClass('class_template.php');

it doesn't work, can anyone help me to find the error ?


Solution

  • You should pass $this->files to foreach. $files is a local variable and a string. $this->files is a instance variable and an array.

    class Core {
        function loadClass() { // there is no need for `$files` here
            $this->files = func_get_args();
            foreach($this->files as $file) { // $this->files not $files
                require dirname(__FILE__)."/source/class/$file";
            }
        }
    }
    
    $load = new Core;
    $load->loadClass('class_template.php');