### 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::$类变量名 或者 类名::$类变量名
具体在内存的分配情况见下图:
![](https://box.kancloud.cn/2016-06-03_5750fd8e34ddc.jpg)
### 下面是简单的实例,加深对上面的理解:
~~~
<?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基础入门