微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php常量和静态变量的区别是什么

PHP中常量和静态变量的区别:1、常量都是不可变的量,而静态变量可以通过self来赋值改变;2、在编译效率上,常量的编译过程较快,而静态变量的编译过程较慢。

本教程操作环境:windows10系统、PHP7.1版、DELL G3电脑

PHP常量和静态变量的区别是什么

在效率上:常量编译过程比静态变量快的多。

代码

<?PHP
error_reporting(E_ALL);
class A {
 
    const c = 9;
    public static $b = 5;
 
    public function setst ($ca) {
        self::$b = $ca;
    }
}
 
$obj = new A;
echo $obj->c;//出错,是类的属性,不是对象的属性
echo $obj->$b;//出错,是类的属性,不是对象的属性
echo $obj::c;//ok,
echo A::c;//ok
echo $obj::$b;//ok
echo A::$b;//ok
$obj->setst(100);//更改静态变量的值
echo $obj::$b;//更改成功
 
?>

结论:

  实例的属性才可以用 $obj->c 这种方式访问。

  静态变量和常量都是类的属性,类的属性都用双冒号访问(::),通过对象或者类名都可以访问。

  常量是不可变的,静态变量可以通过self来赋值改变。

  const常量:类的不变属性

  static变量:类的可变属性

推荐学习:《PHP教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐