2

さまざまなライブラリ (この場合は Symfony) の phpunit bootstrap.php コードには通常、次のようなものが含まれています。

spl_autoload_register(function ($class) {
    if (0 === strpos(ltrim($class, '/'), 'Symfony\Component\EventDispatcher')) {
        if (file_exists($file = __DIR__.'/../'.substr(str_replace('\\', '/', $class), strlen('Symfony\Component\EventDispatcher')).'.php')) {
            require_once $file;
        }
    }
});

クラス名の先頭にスラッシュがあるのはどのような場合ですか?

4

1 に答える 1

1

私は Symfony の専門家ではありませんが、名前空間Symfony\Component\EventDispatcherがある場合、ファイル名を取得してロードしようとしているようです。ltrim()は、独自の検索パスを追加するときにエラーが発生しないように、残留物を単純に削除します。

私は推測することしかできませんが、それが起こっていることはかなり確信しています。

于 2012-11-14T21:32:47.397 に答える