1
我知道我可能会这么多的投票,但请帮助我通过这个,因为我几乎在那里。我有下面的代码。不发送脚本消息
<?php
exec("mode COM1 BAUD=9600 PARITY=N data=8 stop=1 xon=off");
$fp = fopen ("\\.\com1", "r+");
//$fp = dio_open('COM5:', O_RDWR | O_NOCTTY | O_NONBLOCK);
if (!$fp)
{
echo "Uh-oh. Port not opened.";
}
else
{
$string = "AT+CMGF=1";
$string = $string."OK";
$string = $string."AT+CMGS='+44XXXXX'";
$string = $string."> Hello World?<Ctrl>+<Z>";
$string = $string."+CMGS: 44";
$string = $string."OK";
fputs ($fp, $string);
echo $string."\n";
fclose ($fp);
}
?>
上面的代码是输出AT+CMGF=1OKAT+CMGS='+44XXXX'> Hello World?++CMGS: 44OK
但实际上并没有发送任何消息到该号码。
我有设备连接到其中有SIM卡的PC。
我该怎么做?
感谢名单答复我读的地方我需要使用睡眠命令几秒到AT命令来响应...是那个.. ..我怎么样才能在终端测试它? –
我会使用阻止阅读。请注意,我只是使用'fgets'来解释如何去做。你必须弄清楚你自己的时间和格式(这很大程度上取决于调制解调器和连接)。有了[此功能](http://php.net/manual/en/function.stream-set-blocking.php),你可以将'fgets'设置为阻止。 –
好吧,我现在到目前为止,只是想知道为什么PHP不执行'AT + CMGS'我需要包括任何扩展名。? –