我正在尝试使用curl在laravel中使用FCM,但我收到错误。首先,我在我的一个cotroller中写了一个PHP代码:
$first_name = $request->input('first_name');
//FCM api URL
$url = 'https://fcm.googleapis.com/fcm/send';
//api_key available in Firebase Console -> Project Settings -> CLOUD MESSAGING -> Server key
$server_key = 'AIzaSyA1RyuAGGPASh_flFCwiyd9ZHEMYlhQOho';
$target = "r_token";
$fields = array();
$fields['data'] = $first_name;
if(is_array($target)){
$fields['registration_ids'] = $target;
}else{
$fields['to'] = $target;
}
//header with content_type api key
$headers = array(
'Content-Type:application/json',
'Authorization:key='.$server_key
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);
if ($result === FALSE) {
die('FCM Send Error: ' . curl_error($ch));
}
curl_close($ch);
return $result;
我正在尝试使用laravel 5.2在我的控制器中运行此代码但是我收到此错误:
FatalErrorException in WebKyoController.php line 52:
Call to undefined function App\Http\Controllers\curl_init()
我试过:sudo apt-get install php-curl和apache restart,但我仍然收到错误。我只是想知道我需要做什么。
答案 0 :(得分:3)
我偶然发现了这个答案,所以为了防止另一个倒霉的灵魂跟随,请尝试下面对我有用的。
# php -v
PHP 7.0.28-0ubuntu0.16.04.1 (cli) ( NTS ) ...
在这种情况下,我有PHP 7.0
sudo apt install php7.0-curl
sudo service apache2 restart
答案 1 :(得分:0)
不知道php版本
sudo 服务 apache2 重启
sudo apt-get install php-curl
答案 2 :(得分:-1)
我找到了这个问题的解决方案我安装了php 7并且无法正常工作。但是我已经删除了php 7并安装了php 5然后我运行了这些命令:
sudo apt-get install curl
sudo service apache2 restart
sudo apt-get install php5-curl
sudo service apache2 restart
以上命令对我有用。我不知道为什么它不能用于php 7