PHP 作用域解析运算符 (::)

phpserver side programmingprogramming更新于 2025/8/19 19:07:17

简介

在 PHP 中,双冒号  ::  被定义为 作用域解析运算符。它用于访问在类级别定义的常量、属性和方法。在类定义之外引用这些内容时,需要使用类名和作用域解析运算符。该运算符也称为 Paamayim Nekudotayim,在希伯来语中意为双冒号。

语法

<?php
class A{
   const PI=3.142;
   static $x=10;
}
echo A::PI;
echo A::$x;
$var='A';
echo $var::PI;
echo $var::$x;
?>

类内

要访问任何方法内的类级项,请使用关键字 self

<?php
class A{
   const PI=3.142;
   static $x=10;
   static function show(){
      echo self::PI . self::$x;
   }
}
A::show();
?>

在子类中

如果子类重写了父类方法,并且需要调用相应的父类方法,则必须使用 parent 关键字和作用域解析运算符作为前缀。

示例

<?php
class testclass{
   public function sayhello(){
      echo "Hello World
";    } } class myclass extends testclass{    public function sayhello(){       parent::sayhello();       echo "Hello PHP";    } } $obj=new myclass(); $obj->sayhello(); ?>

输出

这将产生以下输出 −

Hello World
Hello PHP

相关文章