≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > PHP笔记

PHP引用操作符注意事项

人气:586 时间:2018-10-08

这篇文章主要为大家详细介绍了PHP引用操作符注意事项,具有一定的参考价值,可以用来参考一下。

感兴趣的小伙伴,下面一起跟随四海网的小编两巴掌来看看吧!

PHP的引用操作符&,熟悉C的都知道C中有一个被称为指针的东西,指针就是指向内存地址的。这个&也是具有同样的功能的。

看如下代码:


$source="110";
$a=$source;
$b=&$source;
$source="120";
echo $a."\r\n",$b;

# End www_512pic_com

这段代码运行之后你会发现一个问题,$a的值并没有根据第四行代码$source的值改变而变化依然是原来的赋值“110”,这个很好理解,$a赋值的时候$source的值就是110,她只是把$source的值copy一个给了自己。

显然你也会注意到变量$b的值发生了变化,$a和变量$b几乎是同时的赋值,为什么出现了如此巨大的差异呢——一个管打人的一个管救人的,差异够大哦!

这就是PHP的引用操作符&的问题了,变量$b因为在赋值的时候应用到了&导致,$b不是copy“110”给自己而是,直接指向了$source的老巢,以后$source就是他$b了。$source 不管怎么变化都会导致$b的变化——很像是一个主机连接两个显示器的关系,既然是这样的关系了$b的变化当然会导致$source的变化了

看:


$b=122;
echo $source;

# End www_512pic_com

输出的结果:122,知道了吧这两个变量从此就是一个“人”了,不要欺负他们哦!

其实为了程序的可读性和随后的编程的误操作,我是不推荐使用这个&引用操作符的,你想啊。你在10000行前,使用了一个$b=&$source;到10000行之后你就不一定记得了,万一你不小心赋错了值,排错的时候就够你喝一壶了!呵呵……

其实这个操作符更多的是用在了数据库连接上,因为我们创建数据库连接对象的时候,往往只需要一个,太多了没用啊。

假设我们有一个类:


class MysqlConnect{} //用来创建数据库连接,那么我们每次调用的时候可以这样写
 
$conn=& new MysqlConnect();

# End www_512pic_com

这样的写法可以保证数据库的连接不会被重复的创建,耗费系统资源。但是如果你真的需要多个不同的连接,你千万不要这样写哦。

当然创建对象的时候这个PHP引用操作符确实是有用的,如果你一个PHP脚本程序上创建了上千个对象的话,系统的开销确实是很大的。如果没有必要创建多个的,尽量使用&吧!

本文来自:http://www.q1010.com/173/2560-0.html

注:关于PHP引用操作符注意事项的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:引用操作符

您可能感兴趣的文章

上一篇:PHP文件读写锁解析
下一篇:PHP 抽象类继承抽象类解析
热门文章
  • PHP 写入WRITE编码为UTF8的文件示例
  • PHP 中文字符串截取函数示例:支持gb2312,gbk,big
  • PHP 简单留言板的制作示例
  • 解决Fatal error: Call to undefined function mb_convert_encoding() in错误问题
  • PHP语言基础(标记、注释、变量、数组、常量、函数)示例
  • php 生成迅雷链接的简单示例
  • php 获取短网址的实现方法
  • PHP 通用分页类的简单示例
  • PHP 使用文件方式导入导出整个MYSQL数据库的实现方法
  • php 获取MYSQL错误的简单示例
  • 最新文章
    • 解决PHP使用redis实现统计缓存MySQL压力的问题
    • php 简单的上传进度条的简单示例
    • php 给html中引用的js和css路径打上版本号的实现方法
    • php 实现计算年龄精准到年月日的实例
    • php+ajax无刷新分页的简单示例
    • 解决php+ajax无刷新上传图片的问题
    • 解决PHP生成HTML静态页面的问题
    • 解决PHP使用uniqid函数生成唯一ID的问题
    • 解决PHP防刷票的一些问题
    • 微信access_token的获取开发的实现方法

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。