自動(dòng)加載是在newSomeClass時(shí),當(dāng)前文件搜索不到該類,觸發(fā)spl_autoload_register函數(shù)進(jìn)行自動(dòng)加載如果沒有newSomeClass時(shí),此時(shí)目標(biāo)文件是沒有被require進(jìn)來的,所以當(dāng)前文件訪問不到目標(biāo)文件中的變量自動(dòng)加載是對于類添加的引入機(jī)制,全局變量可寫在單獨(dú)的配置文件中,然后在項(xiàng)目的引導(dǎo)(入口)文件中引入全局配置文件----------------更新----------------------------看了下composer的autoload源碼mylaravel/vendor/composer/autoload_real.phpcomposer.json中的files是在functioncomposerRequire425b24fc62bbc5c7498e25c716f58d88($fileIdentifier,$file){if(empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])){require$file;$GLOBALS['__composer_autoload_files'][$fileIdentifier]=true;}}這個(gè)函數(shù)中引入的,在函數(shù)內(nèi)引入的文件的作用域是局部的,函數(shù)執(zhí)行完畢局部變量就被釋放了,變量訪問的時(shí)候是全局的,而引入的文件中的函數(shù)已經(jīng)注冊到全局函數(shù)表中,因此函數(shù)可以正常訪問在引入的文件中使用$GLOBALS將變量注冊到全局變量表中,因此可在函數(shù)外部訪問