PHP 执行外部 url 没有重定向(后台)
PHP execute a external url without redirect (background)
我有一个 API url 用于发送短信,我必须在创建新用户后执行此 url。使用 PHP 如何在后台调用 url?
我试过了file_get_contents()
我的url是这样的
在使用 file_get_contents()
时,由于 url 中的更改,我得到了 'Bad request',其中所有“&”都被替换为“ &
'。这将替换传递给 url.
的用户名和密码
并且还尝试了一些其他功能,例如 fopen()
curl()
。不幸的是,对于所有这些功能,我都面临着同样的问题。
那么调用这种 URL 的正确方法是什么?
提前致谢。
也许尝试像这样执行它:
<?php
$url = 'http://bulksms.mysmsmantra.com/WebSMS/SMSAPI.php';
$fields = array(
'username' => "hidden",
'password' => "hidden",
'sendername' => "iZycon",
'mobileno' => 8443223
);
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, count($fields));
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($fields));
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
var_dump($result);
我有一个 API url 用于发送短信,我必须在创建新用户后执行此 url。使用 PHP 如何在后台调用 url?
我试过了file_get_contents()
我的url是这样的
在使用 file_get_contents()
时,由于 url 中的更改,我得到了 'Bad request',其中所有“&”都被替换为“ &
'。这将替换传递给 url.
并且还尝试了一些其他功能,例如 fopen()
curl()
。不幸的是,对于所有这些功能,我都面临着同样的问题。
那么调用这种 URL 的正确方法是什么? 提前致谢。
也许尝试像这样执行它:
<?php
$url = 'http://bulksms.mysmsmantra.com/WebSMS/SMSAPI.php';
$fields = array(
'username' => "hidden",
'password' => "hidden",
'sendername' => "iZycon",
'mobileno' => 8443223
);
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, count($fields));
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($fields));
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
var_dump($result);