2012-08-02 76 views
5

嘗試使用PHP執行oAuth旅程時,我正拉着我的頭髮。無法讓Oauth PHP擴展程序正常工作

我正在使用MAC_OSX_10.7.4/MAMP/PHP,並且指向我的MAMP環境中的php。

我已經下載了最新的oAuth php擴展1.2.2。

我已經運行:

pecl install oauth 

其中回來了成功,當我嘗試重新安裝它,我得到:

pecl/oauth is already installed and is the same as the released version 1.2.2 

我已經添加了一行:

extension=oauth.so 

在我的php.ini。但每當我嘗試運行的代碼,這個簡單的位測試出的OAuth:

<?php 

define("CONSUMER_KEY", "dgqcifzjqksh"); 
define("CONSUMER_SECRET", "73Ft6jKqe3A7sCsc"); 

$oauth = new OAuth(CONSUMER_KEY, CONSUMER_SECRET); 

echo "oauth token" . $oauth; 
$request_token_response = $oauth->getRequestToken('https://api.linkedin.com/uas/oauth/requestToken'); 

if($request_token_response === FALSE) { 
     throw new Exception("Failed fetching request token, response was: " . $oauth->getLastResponse()); 
} else { 
     $request_token = $request_token_response; 
} 

print "Request Token:\n"; 
printf(" - oauth_token  = %s\n", $request_token['oauth_token']); 
printf(" - oauth_token_secret = %s\n", $request_token['oauth_token_secret']); 
print "\n"; 

?> 

我得到我的PHP日誌

PHP Fatal error: Class 'OAuth' not found in /Applications/MAMP/htdocs/wemustcreate/wp-content/themes/MinimalDessign/linkedinOauth.php on line 6 

任何想法以下錯誤我可能是做錯了什麼?我檢查了php.ini,並沒有顯示在那裏。我甚至刪除了現有的擴展名並重新添加它們以確保我的php.ini已正確更新。

我能看到的唯一讓我覺得有些奇怪的是,所有以.so結尾的擴展名都是unix可執行文件,但是我的oauth文件是一個文檔。這可能是問題嗎?我添加了一個截圖來顯示擴展。

oauth.so as a document

+0

檢查phpinfo()並驗證安裝。 – Matt 2012-08-02 20:34:23

+0

我已經通過echo-ing phpinfo()檢查過了.. 你如何建議我驗證它? – Owzzz 2012-08-02 20:41:53

+0

它應該顯示在'phpinfo()'的輸出中。 – Matt 2012-08-02 20:44:28

回答

3

它發生我加載它在PHP的信息頁面,但不工作。

確保真正加載哪些模塊,如果「OAuth的」在列表中顯示:

php -m

確保擴展文件名「.ini」被加載在正確的目錄,在我的情況下,它在裏面

/etc/php5/conf.d/

它應該是代替:

/etc/php5/cli/conf.d/

然後RESTAR t apache。