189 8069 5689

php获取com口数据,php获取接口数据

在PHP网页上用javascript读取串口输入的数据

出于安全性考虑,,,javascript不能操作本地设备的,,,如果需要读取串口中输入的数据,,,用PHP代码来试试。。。。。

成都创新互联公司专注于宿迁企业网站建设,响应式网站,商城网站建设。宿迁网站建设公司,为宿迁等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务

php 怎么读取WCH PCI Express-SERIAL串口?

PHP-Serial

上面的是PHP连接COM口的类,

它是通过PHP调用SHELL命令交互来执行连接COM口的。

线上环境无论从性能和稳定性和安全性都不建议这样使用。

用PHP如何接收串口的数据

假设这个页面有一个功能需要操作并返回某字符串,还用一下代码可以实现执行并读取返回值。

$fp = fopen("","r");

$ret= fgetss($fp,255);

echo $ret."br";

fclose($fp);

怎么用php与串口进行通信

1.通过php扩展dio。

下载dio扩展:

在php.ini打开dio扩展。

dio开启后可以通过dio_open dio_read等函数进行通信。但dio默认只是在Linux下的,好像pecl也有编译后的php_dio.dll,但我在win下测试其实无法正常使用,可能是我php版本太高(5.3.3)。

dio扩展如果能打开,网上自然有很多实例

?php

$c = stream_context_create(array('dio' =

array(‘data_rate’ = 115200,

‘data_bits’ = 8,

‘stop_bits’ = 1,

‘parity’ = 0,

‘is_canonical’ = 1)));

if (PATH_SEPARATOR != “;”) {

$filename = “dio.serial:///dev/ttyS0″;

} else {

$filename = “dio.serial://COM1″;

}

?

2.PHP_SER扩展

这是一个第三方扩展,可以在php5.3.3上正常使用,我测试结果是比较稳定,提供了单字节流通信和异步通信。对于单字节流通信我还专门请教了作者,发现原来可以通过loop读取数据流的。需要注意的是ser_write()的数据是字符型,但是ser_read()的数据则是10进制。所以发送的时候最好转换为hex,接收后由十进制再转为十六进制才能正常使用。

还有就是php_ser作为第三方扩展,作者是收费的。免费版本没有功能限制,只是每次收发字节数不能超过1024字节。

function x_get_cgqbh() {

$str = ‘at+ver?’;

$str = hexToStr($str);

ser_open( “COM1″, 9600, 8, “None”, “1″, “None” );

if (ser_isopen()) {

return “opened, post data ……”;

}else{

return false;

}

ser_write(“$str”);

sleep(1);

$str = ser_read();

ser_close();

return $str;

}


新闻标题:php获取com口数据,php获取接口数据
标题来源:http://cdxtjz.cn/article/dsiipdh.html

其他资讯