PHP var关键字相关原理及使用实例解析


Posted in PHP onJuly 11, 2020

见很多朋友说在php中定义变量用不用var都没关系,其实不然。

看看例子,如果我这样使用var:

var $a=123;
echo $a;
//那么程序会提示语法错误,要去掉var这个变量定义才行。直接
$a=123;
echo $a;
//这样才不会报错,php是弱类型语言,所以不声明类型是没问题的。

那var什么时候才能用,请看:

class Test{
var $a=123;//访问控制,这里的var不用就不正常,当然你可以用public protected等关键词代替,来声明成员变量的属性

}
$obj=new Test();
echo $obj->a;
//打印结果:123

如果把var换成public,一样可以的。

但是这个时候你在类中去掉var,什么访问修饰符都没有,那会提示语法错误的。

其实我经过测试,认为var就是public的别名,是用在类中定义公有属性的,只不过历史问题,现在不用var了。后来查了查php官网,果然如此。

php官方的解释:
类属性必须定义为公有,受保护,私有之一。如果用 var 定义,则被视为公有。

Note: 为了兼容性考虑,在 PHP 4 中使用 var 关键字对变量进行定义的方法在 PHP 5 中仍然有效(只是作为 public 关键字的一个别名)。在 PHP 5.1.3 之前的版本,该语法会产生一个 E_STRICT 警告

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP UTF8编码内的繁简转换类
Jul 20 PHP
PHP 压缩文件夹的类代码
Nov 05 PHP
Fatal error: Call to undefined function curl_init()解决方法
Apr 09 PHP
Codeigniter操作数据库表的优化写法总结
Jun 12 PHP
CentOS下PHP安装Oracle扩展
Feb 15 PHP
PHP将进程作为守护进程的方法
Mar 19 PHP
详解PHP中array_rand函数的使用方法
Sep 11 PHP
php封装的page分页类完整实例
Oct 18 PHP
微信公众号开发客服接口实例代码
Oct 21 PHP
php 二维数组快速排序算法的实现代码
Oct 17 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
Feb 11 PHP
php post json参数的传递和接收处理方法
May 31 PHP
PHP手机号码及邮箱正则表达式实例解析
Jul 11 #PHP
基于PHP实现短信验证码发送次数限制
Jul 11 #PHP
PHP连接MySQL数据库操作代码实例解析
Jul 11 #PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 #PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
Jul 10 #PHP
PHP实现简易用户登录系统
Jul 10 #PHP
PHP二维数组分页2种实现方法解析
Jul 09 #PHP
You might like
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
一个PHP验证码类代码分享(已封装成类)
2011/07/17 PHP
PHP编译安装中遇到的两个错误和解决方法
2014/08/20 PHP
两种php给图片加水印的实现代码
2020/04/18 PHP
Yii2 assets清除缓存的方法
2016/05/16 PHP
使用PHP json_decode可能遇到的坑与解决方法
2017/08/03 PHP
客户端限制只能上传jpg格式图片的js代码
2010/12/09 Javascript
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
常用原生JS兼容性写法汇总
2016/04/27 Javascript
基于Turn.js 实现翻书效果实例解析
2016/06/20 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
2016/08/24 Javascript
JavaScript队列、优先队列与循环队列
2016/11/14 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
原生JS+Canvas实现五子棋游戏实例
2017/06/19 Javascript
JavaScript实现JSON合并操作示例【递归深度合并】
2018/09/07 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
使用layui前端框架弹出form表单以及提交的示例
2019/10/25 Javascript
在vue中使用vant TreeSelect分类选择组件操作
2020/11/02 Javascript
[03:52]DOTA2英雄基础教程 酒仙
2013/12/23 DOTA
[39:00]Optic vs VP 2018国际邀请赛淘汰赛BO3 第三场 8.24
2018/08/25 DOTA
python和C语言混合编程实例
2014/06/04 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
wxPython之解决闪烁的问题
2018/01/15 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
使用Python快速制作可视化报表的方法
2019/02/03 Python
Python PyCharm如何进行断点调试
2019/07/05 Python
Django之提交表单与前后端交互的方法
2019/07/19 Python
Python利用逻辑回归模型解决MNIST手写数字识别问题详解
2020/01/14 Python
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
2013/01/31 HTML / CSS
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
护理专科毕业推荐信
2013/11/10 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
开会通知短信大全
2015/04/20 职场文书
信息技术远程培训心得体会
2016/01/09 职场文书
python b站视频下载的五种版本
2021/05/27 Python
springboot中一些比较常用的注解总结
2021/06/11 Java/Android