私はspl_autoloadが呼び出されていますが、問題は2番目のオートロードが実行されないためです。このコードでは、スクリプトは死ぬべきです。フォルダ配列からクラスを削除すると、自動ロードが機能します。私のコードは次のようになります:spl_autoloadは第2のオートロード機能を呼び出さない
<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors','On');
/*** nullify any existing autoloads ***/
spl_autoload_register(null, false);
/*** specify extensions that may be loaded ***/
spl_autoload_extensions('.php');
function dataLoader($class) {
foreach (array(PV_CORE.DS.'data'.DS, PV_CORE.DS.'system'.DS, PV_CORE.DS.'cms'.DS, PV_CORE.DS.'util'.DS,PV_CORE.DS.'components'.DS, PV_CORE.DS.'template'.DS) as $folder){
if (is_file($folder.$class.'.php')) {
include_once $folder.$class.'.php';
}
}//end foreach
}
function testLoader($class) {
die();
$filename = $class. '.php';
$file =PV_CORE.DS.'data'.DS.$filename;
if (!file_exists($file)) {
return false;
}
require_once $file;
}
spl_autoload_register('dataLoader');
spl_autoload_register('testLoader');
あなたの関数が登録されているのに役立ちますあなたのコールバック内のautoloadスタック
の実行を継続する
希望をしたい場合:ますprint_r(spl_autoload_functionsを());私はあなたがしようとしていることを実際には得られませんでした。 – Talisin