PHP 执行外部 url 没有重定向(后台)

PHP execute a external url without redirect (background)

我有一个 API url 用于发送短信,我必须在创建新用户后执行此 url。使用 PHP 如何在后台调用 url? 我试过了file_get_contents() 我的url是这样的

http://bulksms.mysmsmantra.com/WebSMS/SMSAPI.php?username=hidden&password=hidden&sendername=iZycon&mobileno=8443223

在使用 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);