我試圖使用https://github.com/php-loep/oauth2-client作爲oauth 2.0 libary。如何加載使用composer的庫?
它有依賴需要使用作曲家安裝。
我試圖按照手冊和一切似乎很好,但我只是無法讓它工作!
我將存儲庫克隆到一個文件夾,我下載了composer並安裝了依賴關係。 這生成了一個獨特的自動載入文件。
現在,我的理解是,我只需要這個自動載入文件,應該很好去。這就是我所做的,但是它無法解析我需要加載的類的類名。在我而言,這將是\OAuth2\Client\Provider\Facebook
庫的使用記錄在這裏:https://github.com/php-loep/oauth2-client/blob/master/README.md
爲了確保我沒有給出模棱兩可的信息,我創造了這個短小的shell腳本(腳本不要說謊!),它再現我採取的步驟。如果我在一個空文件夾中運行它,然後運行命令行或Web瀏覽器中創建的文件foo.php
,我得到的錯誤PHP Fatal error: Class 'OAuth2\Client\Provider\Facebook' not found in /var/www/test/foo.php on line 1
繼承人的腳本...
git clone https://github.com/php-loep/oauth2-client.git
cd oauth2-client
curl -sS https://getcomposer.org/installer | php
php composer.phar install
cd ..
echo "<?php ini_set('display_errors',1); require_once 'oauth2-client/vendor/autoload.php'; \$provider = new \OAuth2\Client\Provider\Facebook(array()); " > foo.php
我做了什麼錯?我誤解了作曲家的概念嗎?如果是這樣,請賜教!
我也嘗試將文件foo.php
移動到文件夾oauth2-client
,這沒有改變。
我正在運行php 5.3和__DIR__
常量也可用。
來包含它,有時答案會隱藏在平面視域中.-謝謝。通往地獄的道路上覆蓋着複製和粘貼的印版:P –