php const和static变量的区别是什么

区别:const一旦被定义不可更改,static修饰的变量是可以被更改的。const只可以修饰类的属性,不能修饰类的方法;static可以修饰属性,也可以修饰方法。

php const和static变量的区别是什么

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

PHP中 static 与 const 变量的区别

static变量

1.static静态变量 我们可以对于其 进行修改,但是const变量我们不能对其进行修改
2.static 静态变量可以对其修改权限
3.和java类似,在类的内部,satic 修饰的方法的体内无法访问类的非staic成员变量,只能访问类的staic变量和类的const常量

立即学习“PHP免费学习笔记(深入)”;

class staticTest1 {    var $var1 = "hello";    public static $var2 = "hellostatic"; //public, protected, private    const var3 = "helloconst";    public static function displayDifferent(){###        echo $this->$var1."
";//不能访问普通变量        echo staticTest1::$var2."
";//可以访问类的静态变量        echo self::var3."
";//不能用$this::var3, self::var3代表当前类,$this::var3代表当前对象    }}

登录后复制

//可以用两种方法调用方法

//第一种,通过对象调用$test1 = new staticTest1();echo $test1->displayDifferent();echo "
";//第二种,通过类调用echo staticTest1::displayDifferent();echo "
";

登录后复制

顺便一提,”::” 对于对象而言只能访问静态变量和方法,还有self只能用”::”来调用当前类的成员

const变量

1.const变量只能修饰成员变量,不能修饰方法
2.不需要加修饰权限
3.因为const变量属于整个类的,不属于某个对象,所以不能通过对象来访问,像$this->constvariable就不允许

class constTest1 {    var $var1 = "welcome";//    public const pi = 3.14;//不能加修饰权限    const pi = 3.14;//    const function displayDifferent() {//function前不能加const//        //    }   function displayDifferent() {        echo self::pi."
";//        echo $this::pi."
";     }    static function displayDifferent2() {        echo self::pi."
";//        echo $this::pi."
"; //这句话不行。    }}

登录后复制

两种方法调用

//第一种,通过对象调用$test2 = new constTest1();echo $test2->displayDifferent();//第二种,通过类调用//echo constTest1::displayDifferent();//对象名用"::"只能访问静态变量和方法,所以这个不行echo constTest1::displayDifferent2();

登录后复制

推荐学习:《PHP视频教程》

以上就是php const和static变量的区别是什么的详细内容,更多请关注【创想鸟】其它相关文章!

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

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2517208.html

(0)
上一篇 2025年3月5日 16:00:34
下一篇 2025年3月5日 16:00:43

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何在PHP中获取一些特殊时间节点

    1.获取当月第一天及最后一天     代码: <?php $BeginMonthDate=date('Y-m-01', strtotime(date("Y-m-d")));echo $Begin…

    2025年3月5日
    100
  • php怎么删除数组指定键名

    在PHP中,可以使用unset()函数来删除数组指定键名,语法格式“unset(数组名称[键名]);”。unset()函数可以销毁给定的变量,它的行为会依赖于想要销毁的变量的类型而有所不同。 本教程操作环境:windows7系统、PHP7.…

    2025年3月5日
    200
  • php怎么将含中文的日期转为时间戳

    方法:首先使用date_parse_from_format()函数根据指定格式返回包含中文日期信息的关联数组,语法“date_parse_from_format(‘Y年m月d日’,$str)”;然后使用mktime(…

    2025年3月5日
    200
  • 如何解决linux php版本不一致问题

    linux php版本不一致的解决办法:首先查找php.ini,并查找一下系统里的PHP目录相关的东西;然后在环境变量里加上PHP的路径;最后在文档中添加“export PATH=”/usr/local/php/bin:$PAT…

    2025年3月5日
    200
  • php怎么删除txt里指定行

    php删除txt里指定行的方法:首先创建一个PHP示例文件;然后以读写方式打开txt文件;最后通过“for($n=1;$n 本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑 php实现删除txt文档中指定行的代码,有需…

    2025年3月5日
    200
  • php url转码函数有哪些

    php url转码函数有:1、urlencode函数用于编码URL字符串;2、urldecode函数用于解码已编码的URL字符串;3、rawurlencode函数用于按照RFC3986对URL进行编码;4、rawurldecode用于解码。…

    2025年3月5日
    200
  • php 能实现单例吗

    php能实现单例,其实现一个单例的方法:1、申请一个私有的静态成员变量来保存该类的唯一实例;2、声明私有的构造方法,防止类外部创建对象;3、声明一个静态公共方法,供外部获取唯一实例。 本文操作环境:Windows7系统、PHP7.1版,DE…

    2025年3月5日
    200
  • php怎么修改private

    php修改private值的方法:首先打开相应的PHP代码文件;然后通过PHP中的“__get()”和“__set()”函数来为私有成员变量赋值和获取值即可。 本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑 PHP如…

    2025年3月5日
    200
  • php读文件内容乱码怎么办

    php读文件内容乱码的解决办法:1、检查HTML模板页头是否设置默认编码;2、把charset=UTF-8中的UTF-8改成指定的编码格式;3、设置上传文件的编码格式。 本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑…

    2025年3月5日 编程技术
    200
  • php怎么实现网页伪静态

    php实现网页伪静态的方法:首先在服务器根目录创建一个“.htaccess”文件;然后添加内容为“RewriteRule ^index-(d+).html$ index.php?id=$1”即可。 本文操作环境:Windows7系统、PHP…

    2025年3月5日
    200

发表回复

登录后才能评论