Laravel卷曲错误

时间:2016-03-25 23:24:17

标签: php laravel curl

我尝试使用Curl从Laravel 5控制器发送卷曲请求。

public function funcname(){
$ch = curl_init();
$message = http_build_query([])
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $message);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_close($ch);

回复是:

Call to undefined function App\Http\Controllers\curl_init()

有人能指出我的错误吗?

2 个答案:

答案 0 :(得分:0)

似乎没有启用curl。大多数Windows配置的说明:

找到您的os.environ,将其打开并找到php.ini并取消注释此行(删除extension=php_curl.dll)。然后重启Apache。

在Linux上,行是;

答案 1 :(得分:0)

Controller位于命名空间下,因此您应该使用\curl_init()而不是curl_init()(同时应启用curl,请注意其他注释)。此外,您不需要使用curl,因为您使用的是Laravel,然后使用Guzzle Http Client。查看this tutorial了解更多信息。这是使用Guzzle生成帖子请求的一个非常简单的示例:

$client = new \GuzzleHttp\Client();

$response = $client->post("http://example.com", [
    'headers' => ['X-Foo' => 'Bar'],
    'body'    => ['field_name' => 'value']
]);

var_dump($response->getStatusCode());

Guzzle将使用curl(默认情况下)或其需要使用的任何内容。

相关问题