2013-04-21 34 views
1

我用鬍子爲我的項目,我跟隨它的文檔..這是..致命錯誤:類「Mustache_Engine」未找到

define('DS', DIRECTORY_SEPARATOR); 
require 'system'.DS.'mustache'.DS.'Autoloader.php'; 
Mustache_Autoloader::register(); 
$m = new Mustache_Engine; 

鬍子坐在system/mustache文件夾中。有趣的是,它在Windows下工作得很好。但在我的服務器上(Ubuntu的12.04)它說Fatal error: Class 'Mustache_Engine' not found。我的PHP和我的Windows一樣,所以我真的不明白這裏可能是什麼問題。所有的幫助表示讚賞。

+0

你能夠顯示自動加載程序代碼嗎?如果它在一臺服務器上運行,但不是另一臺服務器,它可能與php設置「include_path」有關。 – 2013-04-21 02:24:02

+0

它就在這裏:https://github.com/bobthecow/mustache.php/blob/master/src/Mustache /Autoloader.php – 2013-04-21 02:47:45

回答

6

mustache包含Autoloader.php的文件夾需要大寫,以匹配類名的大寫。歡迎使用區分大小寫的文件系統:)

通常,您應該將項目根作爲存儲庫本身或存儲庫中的src文件夾。所有子目錄都在那裏製作項目和自動加載器PSR-0 compliant

所以把Mustache.php回購本身在/system,給你/system/mustache/src/Mustache/Autoloader.php

0

我有類似的問題,但路徑是正確的。 我失蹤了Mustache_Autoloader::register(); 我花了一段時間才發現它