PHP致命错误:PHP 5.5中找不到类'Curl'

时间:2014-01-13 14:38:30

标签: php curl

我正在尝试运行此代码:

<?php 

    $url = 'https://api.stackexchange.com/2.1/comments';
    $data = array("site" => 'graphicdesign', "key" => "W*i*e*V*M*N*F*y*b*t*R*((", "filter" => "!2.5sIHWRkCVWC)rFPY_1P", "order" => "desc", "sort" => "creation");

    $httpresponse = (new Curl)->exec($url . '?' . http_build_query($data), [CURLOPT_ENCODING => 'gzip']); //Line 6

    $obj = json_decode($httpresponse);
    $response = $obj->{'items'};

然而,它失败并出现此错误:

$ php getcomments.php 
PHP Fatal error:  Class 'Curl' not found in /home/me/gdcommentgetter/getcomments.php on line 6

my previous question开始,虽然我的PHP版本可能存在问题 - 实例化((new Object)->method()) wasn't available until PHP 5.4.

上的类成员访问权限 但是,

php --version表明我的版本是&gt; 5.4:

$ php --version
PHP 5.5.7-1+sury.org~precise+1 (cli) (built: Dec 12 2013 21:48:51) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies

我按照许多地方的建议运行sudo apt-get install php5-curl,但它仍然失败并出现同样的错误。怎么了?

3 个答案:

答案 0 :(得分:7)

根据documentation,没有课程Curl

也许您忘记导入自己或其他第三方供应商的某些类?

答案 1 :(得分:2)

您可能正在使用提供该类的第三方Curl库。

否则你需要使用curl_init(),如果你还没有安装curl,你需要像这样安装:

sudo apt-get install php5-curl

这仅适用于Ubuntu机器,也可能适用于其他一些发行版

答案 2 :(得分:0)

在PHP中没有构建它的curl类,但很多开发人员已经创建了自己的卷曲器,如https://github.com/sirfilip/curl/blob/master/Curl.php。它在您的服务器上运行的原因是因为您可能已经在服务器上安装了一些您没有在本地安装它的php lib。