如何一次向多部手机发送短信?

时间:2014-01-03 17:09:35

标签: php sms gsm at-command

我有一个用户手机列表。它只是一种数组类型。 例如,

$phone = array('13100998888', '13188888000');

然后我尝试一次向2部手机发送短信。

include "php_serial.class.php";     
$serial = new phpSerial;
        $serial->deviceSet("/dev/ttyACM7");
        $serial->deviceOpen();
        for($i = 0; $i < count($phone); $i++){
            $phone_sendto   = InvertNumbers('86'.$phone[$i]);
            $message        = hex2str($str);
            $mess           = "11000D91".$phone_sendto."000800".sprintf("%02X",strlen($message)/2).$message;

            $serial->sendMessage("at+cmgf=0".chr(13));
            $serial->sendMessage("at+cmgs=".sprintf("%d",strlen($mess)/2).chr(13));
            $serial->sendMessage('00'.$mess.chr(26));
        }
        $serial->deviceClose();

    function hex2str($str) {
            $hexstring=iconv("UTF-8", "UCS-2", $str);
            $str = '';
            for($i=0; $i<strlen($hexstring)/2; $i++){
                    $str .= sprintf("%02X",ord(substr($hexstring,$i*2+1,1)));
                    $str .= sprintf("%02X",ord(substr($hexstring,$i*2,1)));
            }
            return $str;
    }
    function InvertNumbers($msisdn) {
            $len = strlen($msisdn);
            if ( 0 != fmod($len, 2) ) {
                    $msisdn .= "F";
                    $len = $len + 1;
            }

            for ($i=0; $i<$len; $i+=2) {
                    $t = $msisdn[$i];
                    $msisdn[$i] = $msisdn[$i+1];
                    $msisdn[$i+1] = $t;
            }
            return $msisdn;
    }

但是只发送了第一个电话号码13100998888 当然,没有错误 如何一次将短信发送到多用户电话? 我正在使用php_serial.class.php

0 个答案:

没有答案