Php 使用未定义的常量CURLOPT_POST-successed';CURLOPT#u POST';

Php 使用未定义的常量CURLOPT_POST-successed';CURLOPT#u POST';,php,apache,curl,wamp,kohana,Php,Apache,Curl,Wamp,Kohana,我通过Kohana 3.2发出了一个cURL请求,但是当它试图访问CURLOPT_POST常量时,我得到了以下错误: Use of undefined constant CURLOPT_POST - assumed 'CURLOPT_POST' 来自Kohana 3.2system/classes/Kohana/request/client/curl.php public function _set_curl_request_method(Request $request, array $op

我通过Kohana 3.2发出了一个cURL请求,但是当它试图访问
CURLOPT_POST
常量时,我得到了以下错误:

Use of undefined constant CURLOPT_POST - assumed 'CURLOPT_POST'
来自Kohana 3.2
system/classes/Kohana/request/client/curl.php

public function _set_curl_request_method(Request $request, array $options)
{
    switch ($request->method()) {
        case Request::POST:
            $options[CURLOPT_POST] = TRUE;
            break;
        case Request::PUT:
            $options[CURLOPT_PUT] = TRUE;
            break;
        default:
            $options[CURLOPT_CUSTOMREQUEST] = $request->method();
            break;
    }
    return $options;
}
我的申请代码:

$request = Request::factory($uri);
$request->query('key', $key);
$request->post($params);
$request->method(Request::POST);

// fails here
$response = $request->execute();
我已经使用以下方法测试了curl作为扩展是活动的:

if (in_array  ('curl', get_loaded_extensions()))
{
    echo '1';
}
else
{
    echo '0';
}

这里有什么问题?我正在使用Windows 7、PHP 5.4.12和Apache 2.4。

我注意到
extension=PHP\u curl.dll
C:\wamp\bin\PHP\php5.4.12\PHP.ini
中被注释掉,但通过
C:\wamp\bin\Apache\Apache2.4.4\bin\PHP.ini
激活


我发现在
C:\wamp\bin\php\php5.4.12\php.ini中取消对该行的注释解决了我的问题。

首先,让我们检查一下您的服务器上是否安装了php curl

aptitude search php-curl
能力倾向搜索php5.6-curl

如果还没有安装,让我们通过

sudo apt-get install php5.6-curl

你能展示你实际使用的代码片段吗?把代码添加到我的帖子你已经有了对脚本中任何curl函数的实际调用吗?如果curl扩展不可用,它会使php使用
未定义的函数curl\uu….
摆脱困境吗?如果没有(或不确定),最好通过phpinfo()、扩展名_loaded('curl')、…进行双重检查。否,能否显示您发出实际请求的代码?您发布的代码是Kohana库中的一个片段。您是否通过请求工厂提出请求?如果是,怎么做?显示代码的该部分。。e、 g.
$request=request::factory($url)->method('POST')->POST('key','value')
我知道这还为时过早,但这不是一个不带引号的数组键的预期行为吗?这不会起作用,因为提问者特别指出,他们有一个旧版本的PHP(5.4.12),它与
php5.6-curl
不兼容。在提供答案之前,请仔细阅读问题。此外,这个问题是两年前提出的,并且已经有了一个公认的解决方案。请尝试通过提供答案来避免将问题“撞”到顶部,除非该问题尚未标记为已解决,或者您找到了一种更好的解决问题的替代方法:)