我正在寻找一种与Windows上的RS232串行COM端口通信的方法.我在网上找到了2个解决方案,一个不完全免费(在功能上引入故意延迟),另一个在Windows上具有有限的功能.后者只能写入Windows上的COM端口,而不能读取.
我不能看第一个解决方案的代码,因为它被编译成.dll(有意义,否则人们只能编辑延迟而不是购买它......)而第二个似乎只使用fopen()打开端口,然后用fwrite()来写它,就像人们对流一样.但显然正在肆无忌惮地回归它.
我知道第一个解决方案可以做到这一点,虽然它确实需要Apache使用php-cgi模块而不是php5module.
有任何想法吗?
上述每个解决方案都是低效或过多的工作.
您可以使用PHP-DIO库(dio_fcntl,dio_open,dio_read,dio_write,dio_seek,...).它也在PHP手册的DIO条目中:
默认情况下,此PECL程序包不可用.如果您的PHP 5.2.x大于5.2.6,为了获得它,您可以将其作为ZIP的一部分下载:
线程安全(适用于Apache)
非线程安全(适用于IIS)
这两个链接都可以在http://www.deveblog.com/index.php/download-pecl-extensions-for-windows/找到
这是Linux的构建,只需获取它并执行phpize/configure/make/make install.
我不知道它是否应该在Apache会话中使用,而是去实现它.