<?php/** * Created by PhpStorm. * User: fu * Date: 2017/7/18 * Time: 15:08 */define('MYNUM', 2000);//echo MYNUM;if(!defined('MYNUM')){ define('MYNUM', 4000);}//echo MYNUM;class CeShi{ protected $name; //在類中定義常量使用const關鍵字 const NUM = 10; static $num = 100; public function test(){// echo $this->name;// echo $this->NUM; // 在類的內部調用訪問類常量使用關鍵字self,後面跟上範圍解析操做符(簡稱一對冒號) echo self::NUM.'===';// echo $this->num; echo self::$num; //在類中訪問靜態函數 ::這個是範圍限定操做符// $this->test2(); //這樣寫能夠訪問到結果,可是不建議 self::test2(); // self::這個寫法纔是標準格式 } public static function test2(){// $this echo '====調用了靜態的函數方法=='; }}$cs = new CeShi();$cs->test();echo '<br><br>';// 在類的外部訪問類中的常量,通常都是使用該類的類名,固然也可使用該類的對象名稱來訪問echo '在類的外部訪問常量:'.CeShi::NUM;echo '<br><br>';//echo $cs->NUM;echo $cs::NUM;echo '<br><br>';// 類的名稱+範圍解析操做符+靜態變量名稱echo '在類的外部訪問靜態屬性:'.Ceshi::$num;echo '<br><br>';//echo $cs::$num;////echo $cs->num;echo '<br><br>';$sc = new CeShi();//$sc::$num = 500;// 每一個靜態屬性在內存中只會保存一個備份//echo $sc::$num;//echo $cs::$num;//在類的外部訪問類的內部靜態方法函數echo Ceshi::test2();echo $cs::test2();echo $cs->test2();// 不推薦的寫法