2014-09-19 53 views
0

我的問題是下一個,需要使用谷歌API的PHP庫

我試圖使用OAuth 2.0功能的谷歌登錄融入我公司的後端路徑不工作。

我測試了我的域名,www.gabrielestevez.com,這裏的一切都運行完美,沒有與需要的路徑沒有問題,一切smothly運行

但是,該公司後端目錄結構如下 enter image description here

我使用我開發的MVC框架,在Google_SL.php文件包含在那裏我做第一個就是兩條require_once

require_once 'Google/Client.php'; 
require_once 'Google/Service/Oauth2.php'; 

工作正常類,但是當它進入client.php並試圖加載該類

require_once 'Google/Auth/AssertionCredentials.php'; 

不工作,這是在腳本中發生 錯誤「錯誤的/ home/XXX /的public_html /管理/ HMF/Core/library/auth/Google/Client.php'在線18:require_once(Google/Auth/AssertionCredentials.php)[function.require-once]:未能打開流:沒有這樣的文件或目錄 日期/時間:9 -19-2014 11點50分29秒

,我不想這個庫中手動改變所有的路徑,因爲我知道有必須是一個更好的解決這個

任何輸入讚賞。

+0

顯然,問題在於您使用的是相對路徑。唯一的解決辦法是改變文件的包含方式,我想你可以使用自動加載器,或者你可以用正確的方式(IMO)來做,並定義一個基本路徑,然後連接從那裏的包含路徑。 – Ohgodwhy 2014-09-19 16:57:07

+0

你能否解釋一下或者指向我可以查看這個鏈接的鏈接,順便說一句,我總是用親戚路徑 – 2014-09-19 18:04:23

+0

掙扎一下,什麼是IMO? – 2014-09-19 18:04:41

回答

1

以供將來參考

我固定使用這個 通過set_include_path($ _ SERVER [ 'DOCUMENT_ROOT']我的問題。「/管理/ HMF /核心/ library/auth /'。PATH_SEPARATOR。get_include_path());

0

嘗試使用__DIR__獲取腳本的當前目錄。不完全知道在您AssertionCredentials.php是的,但你可以試試

require_once(__DIR__ . '/Google/Auth/AssertionCredentials.php'); 
+0

這是我不想做的事情,我將不得不爲此做所有的文件,並且非常耗時 – 2014-09-19 18:02:34

+0

我以爲你只需要改變client.php?所以你的AssertionCredentials.php需要在多個地方?希望這隻會影響你的應用程序的一小部分。 – 2014-09-19 18:15:11

+0

謝謝,我剛剛發現我的問題的解決方案使用 – 2014-09-19 21:55:38