称赞。
我是php的新手,但我一直在尝试在我的网站上创建一个短信平台/通知来赞美已经创建的新闻通知但我迷失了关于如何初始化多个变量以在我的php中作为一个单元一起工作码。步骤如下:
//i favour if...elseif over the switch method
//to declare the gateways variables
//step one. declaring gateways variables
$us_ca = array ('@txt.att.net', '@smscellular.com', '@more_gateways');
$nig = array ('@smsairtel.ng.com', '@more_gateways');
$gha = array ('@txt.mtn.com.gh', '@more_gateways');
..................................................
//note that the gateways are not correct but only cited as samples.
// i use more_gateways to represent others i couldn't write
// because of time and space
//step two. where the sms gets delivered.
if zip_code == '+1' {
email = '$telephone$us_ca', '$zip_code$telephone$us_ca'; //telephone
var for user's telephone, i create a second because some gateways
requires the country zip code.
} elseif zip_code == '+234'{
email = '$telephone$nig', '$zip_code$telephone$nig';
} elseif zip_code == '+233'{
email = '$telephone$gha', '$zip_code$telephone$gha';
}
........................................................
//note that i am targeting almost 90 countries.
现在我想知道的是,如果可以在第一步中声明数组var中的网关,如果在第二步中初始化多个var,那么我在第二步中的做法也不错。
请注意,每个短信都会同时发送到阵列中的所有网关,因为每个单独的电话号码对于在给定国家/地区提交的用户而言是唯一的,因此短信只能单独发送给用户虽然它首先进入所有网关。
提前致谢。
答案 0 :(得分:2)
在简单的PHP函数中调用短信RestApi来发送短信:
function CURLsendsms($number, $message_body){
$api_params = $api_element.'?apikey='.$apikey.'&sender='.$sender.'&to='.$mobileno.'&message='.$textmessage;
$smsGatewayUrl = "http://springedge.com";
$smsgatewaydata = $smsGatewayUrl.$api_params;
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_URL, smsgatewaydata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
// Use file get contents when CURL is not installed on server.
if(!$output){
$output = file_get_contents($smsgatewaydata);
}
}
您也可以使用php类发送短信 http://www.phpclasses.org/package/9522-PHP-Send-SMS-messages-with-Spring-Edge-API.html
上面有两个文件:
此类使用spring edge sms网关提供程序API,您可以根据需要为任何其他sms提供程序自定义RestAPI url和params。