### 1、下面是全局變量使用:
~~~
<?php
//定義,全局變量
global $global_nums;
//賦值
$global_nums=0;
class Child{
public $name;
function __construct($name){
$this->name=$name;
}
public function join_game(){
global $global_nums;
$global_nums+=1;
echo $this->name."加入堆雪人游戲<br/>";
}
}
//創建3個小孩
$child1=new Child("aaa");
$child1->join_game();
$child2=new Child("bbb");
$child2->join_game();
$child3=new Child("ccc");
$child3->join_game();
echo $global_nums;
?>
~~~
注意:全局變量只能先定義,再進行初始化,不能直接初始化,或初始化和定義寫到一起。
2、static 靜態變量使用
~~~
<?php
class Child{
public $name;
public static $nums=0;
function __construct($name){
$this->name=$name;
}
public function join_game(){
//類內部訪問 2中如下
//Child::$nums+=1;
self::$nums+=1;
echo $this->name."加入堆雪人游戲<br/>";
}
}
//創建3個小孩
$child1=new Child("aaa");
$child1->join_game();
$child2=new Child("bbb");
$child2->join_game();
$child3=new Child("ccc");
$child3->join_game();
$child4=new Child("ddd");
$child4->join_game();
//外部訪問
echo Child::$nums;
?>
~~~
靜態變量只能定義在類中,使該類的所有對象共享的變量,任何一個該類的對象去訪問他時,取到的數值都是一樣的,同樣任何一個該類的變量去修改他時,修改的都是同一個變量。
如何訪問靜態變量:
在類外部:類名::$類變量名
在類內部:self::$類變量名 ?或者 ? 類名::$類變量名
具體在內存的分配情況見下圖:

### 下面是簡單的實例,加深對上面的理解:
~~~
<?php
/*
//第一種情況
class Person{
public static $a=90;
}
echo Person::$a;
// 輸出不會報錯打印:90
*/
/*
//第二種情況“
class Person{
public static $a=900;
public function __construct(){
$this->a=45;//(1)
}
}
echo Person::$a;
//不會報錯,輸出900;(1)寫法是錯誤的,但是因為沒有創建對象,
//所以不會被調用,也就不會出錯~
*/
//第三種情況“
class Person{
public static $a=9011;
public function __construct(){
$this->a=45;//(1)
}
}
$p1=new Person();
echo Person::$a;
//;(1)寫法是錯誤的,但是因為創建了對象,被調用
?>
~~~
- 前言
- HTML(第一天)
- HTML(第二天)
- DIV+CSS(第一天)
- DIV+CSS(第二天)
- DIV+CSS(第三天)
- DIV+CSS(第四天)
- PHP開發環境配置說明
- PHP基礎數據類型及運算符介紹
- 走進PHP函數
- 走進位運算
- 走進數組及相關數組函數
- 面向對象的編程(類與對象)
- 面向對象的編程(類成員方法用法)
- 構造方法,析構方法
- static,global用法
- 靜態方法
- 面向對象的編程方法
- 接口方法
- 接口VS繼承、final、const
- 錯誤及異常處理機制、錯誤日志
- HTTP協議深度剖析
- 文件下載
- PHP數據庫編程
- 數據庫編程(2)
- 超全局變量
- Zend studio 開發環境入門
- 雇員管理系統(1)
- 雇員管理系統(2)
- 會話技術(cookie session)
- 會話技術 session場景使用介紹!
- PHP.in中session和cookie的配置說明
- PHP文件編程
- 報表及繪圖技術
- 報表及繪圖技術(jpgraph庫使用,Linux安裝及配置說明)
- XML基本語法及DTD介紹
- XML編程(Dom技術)
- XML編程(Xpath技術,simpleXml技術)基礎入門
- 網上支付平臺PHP版本
- javascript基礎入門