0

私は3つのファイルを持っています

/autoload-test.php

spl_autoload_register(function ($class) {
    require_once($_SERVER['DOCUMENT_ROOT'] . '/controllers/' . $class . '.php');
});
$different_file_obj = new test;

/controllers/test.php

require_once('some_var.php');
class test {
        function __construct() {
                echo $GLOBALS['var'];
            }
    }

/controllers/some_var.php

$var = 'some value';

ブラウザでファイル 1 を開くと、これが表示されます -> Notice: Undefined index: var in /Applications/XAMPP/xamppfiles/htdocs/avrs/controllers/test.php on line 7

しかし、ファイルを->に変更すると

require_once($_SERVER['DOCUMENT_ROOT'] . '/controllers/test.php');
$different_file_obj = new test;

それは正常に動作するので、spl_autoload_register を使用してファイルを含めることにはいくつかの違いがあると考えています。ここで変更するのはそれだけだからです。spl_autoload_register を含めなくても問題なく動作します。

私が知っておくべきこと、またはこれについて詳しく読むことができる場所はありますか?

4

0 に答える 0