2014-03-05 174 views
0

我已經安裝並加載了PECL http擴展。致命錯誤:即使在php.ini中加載pecl_http後仍未找到'HttpResponse'類

我已經添加在php.ini這些行:

extension=raphf.so 
extension=propro.so 
extension=http.so 

而且我看到下面被添加在

phpinfo() 

HTTP支持的輸出使能,擴展版本2.0.4

libz 1.2.5 1.2.5

libcurl 7.24.0 7.24.0

libevent的殘疾人殘疾

但是,當我嘗試使用的HttpResponse我收到錯誤的類:

致命錯誤:類「的HttpResponse」不RequestHandler.php找到第21行

燦任何人都請引導我錯過了什麼。

+0

另外還有文件包含類的HttpResponse不是一個機會包含在您使用的文件中。你可以發佈你的代碼嗎? – Prathap

+0

你是對的我沒有明確地在我的代碼中包含該文件。但後來我正在閱讀的PHP不需要包含像java這樣的代碼,因爲PHP在運行時會這樣做嗎? – Pawan

+0

PHP不會自動執行此操作。如果你正在使用一個框架,它可能會有一個自動加載器來做到這一點。 – Prathap

回答

0

如何使用不需要PECL擴展的代碼?

例如,這是我用來檢索結果從一個特別設計的aspx文件回:

function getLoginToken($dashboardUrl, $dashboardUsername, $dashboardPassword) 
{ 
    $url = "{$dashboardUrl}GetLoginToken.aspx"; 
    $data = array('dashboardUsername' => $dashboardUsername, 
      'dashboardPassword' => $dashboardPassword); 
    $options = array(
      'http' => array(
       'header' => "Content-type: application/x-www-form-urlencoded\r\n", 
       'method' => 'POST', 
       'content' => http_build_query($data), 
      ), 
      ); 

    $context = stream_context_create($options); 
    $result = file_get_contents($url, false, $context); 
    return $result; 
} 
+0

我想要走PECL路線的唯一原因(即使它在後面有真正的痛苦)是因爲我一直在閱讀它提供的因爲它是用C語言編寫的,所以處理速度更快。我在PHP中使用http請求和響應處理的非PECL選項是什麼 – Pawan

1

我想通了。好極了!!

我安裝pecl_http版本2和版本測試方法1.版本2比1的版本完全不同的API誰會想到:)

相關問題