当前位置:首页 » 编程语言 » php与操作

php与操作

发布时间: 2022-01-10 06:42:52

php可以对硬件操作吗

完全可以的,php可以操作串口rs232的。
例子如下:
<?php
// --------------------------------------------------------------------------
// File name : RS232_Server.php
// Description : RS232演示上位机程序
// Requirement : PHP 5.1.4 (cli) (http://www.php.net)
//
// Copyright(C), HonestQiao, 2006, All Rights Reserved.
//
// Author: HonestQiao ([email protected]/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中&&与&有什么区别

PHP中&&与&的区别:

1、运算符性质的区别

&&在PHP中是一个逻辑操作符,也叫条件操作符。

&是逻辑语言,逻辑上表示两者属于缺一不可的关系,还可以表示一个人和另外一个人之意,与and同义。如A&B,表示A与B,A和B,A×B。

2、作用上的区别

&&就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。

&是将两个二进制的数逐位相与,结果是相与之后的结果。

3、用途上的区别

&&:x&&y——功能描述: “条件与”:x和y均为true,取值是true,否则取值是false。&&需要两个操作数的值都是true时,才取值true,但是两个操作符还是有区别的:使用方法是int&& rx=x。

&:是一个位运算符。参加运算的两个数的二进制形式,每一个二进制位进行”与“运算,最后的结果二进制作为结果,例如:3 & 5=1,因为3和5的二进制分别是0011、0101,两个进行与运算的结果是0001。

⑷ php如何用操作符 -> 连续访问多个方法

这个很简单,但前提是这种方法只能应用于类对象。

下面给你写个简单的例子:

<?php
//首先来写个简单的类
classa{
privateb=0;

publicfunctionc($Num=0){
$this->b=$Num;
return$this;//关键就在这里,有这条就可以连续调用了,原理下面再解释
}

publicfunctiond(){
echo$this->b;
}

}

//接下来是调用
$Obj=newa;
$Obj->c(500)->d();
//调用运行后,页面会输出500

原理解释:

在php中, return关键词通常会用于给函数方法返回值并终止该函数方法的运行

比如一个方法a, 如果return 1 那么这个函数最后的返回值就是1,

而类对象中,$this表示当前对象, 那么return $this 等于就是给函数返回了类当前对象,而这个函数的最后结果也成了一个对象, 那对象,自然就能使用 -> 调用该对象中的成员了!

⑸ php中的&操作符和c语言&操作符有什么区别

$a=&$b // *a=*(*b)
$a取的地址就是b内存指向数值的地址,所以$b发生变化,也就是b指向数值的内存地址发生了变化。
我认为楼主理解的没有错,C中指针型变量存储的是指向对象的地址,而非本身地址

⑹ php中&&和||的用法 这样用什么意思

a && b === if(a) { b },&&是同时必须满足的意思。a || b === if(!a) { b },||是或者的意思。

$ckfid&&$rs=$db->get_one("SELECT * FROM $table WHERE fid='$ckfid'");

其实这句话相当于只有当$ckfid不为空的时候才执行后面的也就是约等于。

if($ckfid) {
$rs=$db->get_one("SELECT * FROM $table WHERE fid='$ckfid'");}

而底下的||,则相当于$rs[name]为空的时候才执行,因为当$rs[name]不为空的时候,这个条件已经满足了,后边也不用再做任何判断了。只有不满足的时候,才去做后面的操作。

(6)php与操作扩展阅读:

PHP的特性包括:

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

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

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

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

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

4. 最重要的是PHP可以用C、C++进行程序的扩展!

PHP版本VC6与VC9、Thread Safe与None-Thread Safe等的区别。PHP的大版本主要分三支:PHP4/PHP5/PHP6,其中,PHP4由于太古老、对QQ支持不力已基本被淘汰,请无视PHP4。

PHP6由于基本没有生产线上的应用,还基本只是一款概念产品,很多功能已在PHP5.3.3上实现,所以也不详述,请无视PHP6。PHP5的版本主要分四支:PHP5.2之前的版本、PHP5.2.X、PHP5.3和日前发布的PHP5.4。

选择版本,PHP5.2之前的版本不值得考虑,因为某些功能缺陷或者BUG。PHP5.4还处于Beta试用的版本号,非稳定版本,请无视PHP5.4。

主流PHP程序对PHP5.2.X的兼容性最好,而每次版本号的升级带来的都是安全性和稳定性的改善,所以宜挑选最新的版本。目前PHP5.2系列最新的是PHP5.2.17。

⑺ php中.=和*=操作方式是否类似

.=通俗的说,就是累积。

比如:

$a = 'a'; //赋值
$b = 'b'; //赋值
$c = 'c'; //赋值
$c .= $a;
$c .= $b;

echo $c; 就会显示 cab

+=意思是左边的变量的值加上右边的变量的值再赋给左边的变量。

没有*=

⑻ php中的::操作符是什么意思

这个是作用域限定操作符,是用一个双冒号"::"表示,它用来置顶类中不同作用域的级别。左边是作用域右边是访问作用域的成员。
在php中定义的作用域有self和parent两种(在php6中提供了static作用域)。

self:表示当前类的作用域,与this不同的是它不表示类的某个特定实例,在类之外的代码中不能使用self,而且它不能识别自己在继承中层次的位置。也就是说,当在扩展类中使用self时,它调用的不是父类的方法,而是扩展类的重载的方法。
parent:表示当前类父类的作用域,其余的跟self特性一样。

⑼ php并发操作文件

是可以的 php不是有一个锁定机制吗?当一个用户操作的时候 其他用户可以读而不可写入

⑽ php怎么用

推荐阅读:腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)点击此处

热点内容
22款奔驰e买哪个配置 发布:2024-12-25 20:54:08 浏览:737
金铲铲之战怎么看之前的服务器 发布:2024-12-25 20:52:36 浏览:448
unix环境高级编程英文版 发布:2024-12-25 20:50:35 浏览:291
我的世界电脑版服务器如何改实验模式 发布:2024-12-25 20:41:57 浏览:129
数据库删过程 发布:2024-12-25 20:39:38 浏览:447
创建sql存储过程 发布:2024-12-25 20:29:14 浏览:531
python目录存在 发布:2024-12-25 20:18:51 浏览:672
防止反编译的代码 发布:2024-12-25 20:18:03 浏览:70
多开服务器系统怎么优化 发布:2024-12-25 20:16:39 浏览:83
php过滤html函数 发布:2024-12-25 20:09:19 浏览:173