首页 > 开发 > PHP > 正文

双冒号 ::在PHP中的使用情况

2024-05-04 23:40:08
字体:
来源:转载
供稿:网友

前几天在百度知道里面看到有人问PHP中双冒号::的用法,当时给他的回答比较简洁因为手机打字不大方便!今天突然想起来,所以在这里总结一下我遇到的双冒号::在PHP中使用的情况!

双冒号操作符即作用域限定操作符Scope Resolution Operator可以访问静态、const和类中重写的属性与方法。

在类定义外使用的话,使用类名调用。在PHP 5.3.0,可以使用变量代替类名。

Program List:用变量在类定义外部访问

 

  1. <?php 
  2. class Fruit { 
  3. const CONST_VALUE = 'Fruit Color'
  4. $classname = 'Fruit'
  5. echo $classname::CONST_VALUE; // As of PHP .. 
  6. echo Fruit::CONST_VALUE; 
  7. ?> 
  8. Program List:在类定义外部使用:: 
  9. <?php 
  10. class Fruit { 
  11. const CONST_VALUE = 'Fruit Color'
  12. class Apple extends Fruit 
  13. public static $color = 'Red'
  14. public static function doubleColon() { 
  15. echo parent::CONST_VALUE . "/n"
  16. echo self::$color . "/n"
  17. Apple::doubleColon(); 
  18. ?> 

程序运行结果:

Fruit Color Red

Program List:调用parent方法

 

 
  1. <?php 
  2. class Fruit 
  3. protected function showColor() { 
  4. echo "Fruit::showColor()/n"
  5. class Apple extends Fruit 
  6. // Override parent's definition 
  7. public function showColor() 
  8. // But still call the parent function 
  9. parent::showColor(); 
  10. echo "Apple::showColor()/n"
  11. $apple = new Apple(); 
  12. $apple->showColor(); 
  13. ?> 

程序运行结果:

Fruit::showColor()

Apple::showColor()

Program List:使用作用域限定符

 

 
  1. <?php 
  2. class Apple 
  3. public function showColor() 
  4. return $this->color; 
  5. class Banana 
  6. public $color; 
  7. public function __construct() 
  8. $this->color = "Banana is yellow"
  9. public function GetColor() 
  10. return Apple::showColor(); 
  11. $banana = new Banana; 
  12. echo $banana->GetColor(); 
  13. ?> 

程序运行结果:

Banana is yellow

Program List:调用基类的方法

 

 
  1. <?php 
  2. class Fruit 
  3. static function color() 
  4. return "color"
  5. static function showColor() 
  6. echo "show " . self::color(); 
  7. class Apple extends Fruit 
  8. static function color() 
  9. return "red"
  10. Apple::showColor(); 
  11. // output is "show color"! 
  12. ?> 

程序运行结果:

show color

以上内容给大家详解了::在PHP中的使用情况,希望大家喜欢。


注:相关教程知识阅读请移步到PHP教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表