AI智能
改变未来

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

见很多朋友说在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 出现Strict Standards: Only variables should be passed by reference in的解决方法
  • PHP中的print_r 与 var_dump 输出数组
  • php中get_object_vars()方法用法实例
  • PHP中echo,print_r与var_dump区别分析
  • PHP异常Parse error: syntax error, unexpected T_VAR错误解决方法
  • php var_export与var_dump 输出的不同
  • php输出echo、print、print_r、printf、sprintf、var_dump的区别比较
  • PHP提示Notice: Undefined variable的解决办法
  • php中var_export与var_dump的区别分析
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » PHP var关键字相关原理及使用实例解析