好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php硬件通讯 php与硬件交互

很多站长朋友们都不太清楚php硬件通讯,今天小编就来给大家整理php硬件通讯,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 我可以通过PHP语言控制硬件吗 2、 php可以对硬件操作吗 3、 php为什么不适合做微服务 4、 用PHP实现网页直接操作硬件串口 我可以通过PHP语言控制硬件吗

可以的,php可以操作串口rs232的。

因为PHP有个函数叫exec,非常有用的一个函数,可以运行“系统命令”。例如在ubuntu系统上,跑动 killMe.php, 来上一句:

<?php exec('sudo umount /dev/');

// linux exec('sudo shutdown -h now');

// linux exec("木马.exe"); // Window

还可以关闭网络、配置网络、杀掉进程等等 。

PHP的特性包括:

1. PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。

2. PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,

PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;

PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。

3. PHP支持几乎所有流行的数据库以及操作系统。

php可以对硬件操作吗

完全可以的,php可以操作串口rs232的。

例子如下:

<?php

// --------------------------------------------------------------------------

// File name : RS232_Server.php

// Description : RS232演示上位机程序

// Requirement : PHP 5.1.4 (cli) ()

//

// Copyright(C), HonestQiao, 2006, All Rights Reserved.

//

// Author: HonestQiao (honestqiao@hotmail测试数据/QQ:5601680)

//

// 程序简介:

// 本程序与RS232_Client构成一个完整的演示系统,展示了PHP在RS232串口通讯上的应用。

// 程序之中实现了一个基础但是完整的RS232通讯协议(HQB232),通讯协议格式如下:

// 协议内容:

// C->S 01 //请求通讯

// S->C 02 //响应通讯

// C->S LEN DATA //LEN表示数据(DATA)长度 DATA表示实际数据

// C->S 03 //结束通讯

// 说明:S表示上位机 C表示下位机

// HQB232表示HonestQiao演示的基础(Base)RS232通讯协议,包含了协议的

// 请求和响应,数据帧的结构。

// 演示过程为通讯的请求和响应,十次数据帧的发送, 通讯的结束

// 数据帧的结构为当前的序号,microtime(),随机字符串

//

// 欢迎探讨PHP在RS232串口通讯上的应用。

// --------------------------------------------------------------------------

set_time_limit(0);

exec('mode COM1: baud=115200 data=8 stop=1 parity=n xon=on');

$fd = dio_open('COM1:', O_RDWR);

if(!$fd)

{

die("Error when open COM1");

}

$ff = dio_stat($fd);print_r($ff);

echo "HQB232 SERVER is listenning on COM1\n";

/// read

$len = 2;

$t=0;while (($t++)<1000)

{

$data = dio_read($fd, $len);

if ($data) {

if($data==chr(0).chr(1)){

echo "S_RECV:01\n";

echo "S_SEND:02\n";

dio_write($fd,chr(0).chr(2));

break;

}

}

}

/// read

$len = 2;

$t=0;while (($t++)<1000)

{

$len = 2;

$data = dio_read($fd, $len);

if($data==chr(0).chr(3)){

echo "S_RECV:03\n";

break;

}

elseif ($data) {

$len = intval($data);

$data = dio_read($fd, $len);

if($data){

echo "S_RECV:($len)$data\n";

}

}

}

dio_close($fd);

?>

php为什么不适合做微服务

php不适合做微服务原因:例如与硬件通讯.至于开发的话,你可以用swoole扩展或者grpc。

PHP毕竟是CGI脚本,很多底层的驱动级的工作还不能做,而且主要是其面向对象不够完善,在SOA上的应用还是有些不足。当然因为PHP能够做些位计算什么的,可以很方便的做些帧协议的操作,比如Radius协议的实现等。

快捷高效:

PHP的内核是C语言编写的基础好效率高,可以用C语言开发高性能的扩展组件;PHP的核心包含了数量超过1000的内置函数,功能应有尽有很全面,开箱即用程序代码简洁;PHP数组支持动态扩容,支持以数字、字符串或者混合键名的关联数组,能大幅提高开发效率。

PHP是一门弱类型语言,程序编译通过率高,相对其他强类型语言开发效率快;PHP天然热部署,在php-fpm运行模式下代码文件覆盖即完成热部署;PHP经过20多年的发展,在互联网上可以搜到海量的参考资料供参考学习。

用PHP实现网页直接操作硬件串口

用PHP实现网页直接操作硬件串口,网页通过串口控制硬件设备、发送指令,读取返回值。

读取ec,php值效果

实现方案:

1.网页端通过websocket与php后台服务交互

2.php后台接收指令操作串口,发送16进制指令给硬件设备

3.php后台将硬件设备返回值通过websocket,传递给网页端

4.网页端接收推送消息,显示在页面上。

关于php硬件通讯的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php硬件通讯 php与硬件交互的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did208247
更新时间:2023-05-03   阅读:30次

上一篇: phppost数据多大 php post用法

下一篇:支持curl的php主机 php curl视频教程

相关资讯

最新资料更新

  • 1.php网站+iis php网站有哪些
  • 2.phpvc6vc9的简单介绍
  • 3.iconv函数php iconv函数参数
  • 4.php翻译sdk php翻译成中文是什么意思
  • 5.php汉字搜索 php 搜索字符串
  • 6.php的sql累加 sql实现累加
  • 7.php怎么使用css php怎么使用数据库锁
  • 8.php技术网学习 php技术门户
  • 9.php项目补充redis php+redis
  • 10.php的如何使用数组if php中数组
  • 11.字符串对齐方法php php字符串赋值
  • 12.php项目任务分配 php任务调度框架
  • 13.php配置smtp php配置文件的文件名是什么
  • 14.kohanaphp版本 koo版
  • 15.修改php网页链接 怎么修改php网页
  • 16.php每个小时执行 php定时执行每天执行一次
  • 17.php中序递归 php递归算法1加到100
  • 18.php获取url# php获取url id
  • 19.php微信推送提醒 php主动推送消息到安卓
  • 20.php函数rand PHP函数的参数传递包括

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]