本文實例講述了thinkPHP線上自動加載異常與修復方法。分享給大家供大家參考,具體如下:
項目遇到一個奇怪的問題,本地代碼正常,服務器上卻不正常。
經過測試,應該是自動加載出了問題,嘗試了各種方法,
1.手動加載,發現好麻煩,沒完沒了。
2.自己寫自動加載,寫不出來,尴尬。
3.修改配置,使其支持自動加載,發現還是不行。
後來進行調試,
發現本地支持
import('@.ORG.OSS\OssClient'); import('@.ORG.OSS\Core\OssUtil');
而服務器上,不支持這種斜槓的方式,卻支持.的方式
後來就把thinkphp核心代碼,進行調整。
// 根據自動加載路徑設置進行嘗試搜索 $paths = explode(',',C('APP_AUTOLOAD_PATH')); foreach ($paths as $path){ $class = str_replace("\\",".",$class); // dump($class); if(import($path.'.'.$class)){ // dump($path.'.'.$class); // 如果加載類成功則返回 return ; } }
經過這個小小的動作,可以了,服務器可以使用OSS了。
不容易啊!
更多關於thinkPHP相關內容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《php常用函數與技巧總結》、《smarty模板入門基礎教程》及《PHP模板技術總結》。
希望本文所述對大家基於ThinkPHP框架的PHP程序設計有所幫助。