例子,php静态方法的用法法,static 的使用方法和特性。
hello world:
复制代码 代码示例:
class hw{
public static function hi(){
return 'Hello World!!!';
}
}
echo hw::hi();
echo hw::hi();
class hw{
public function hi(){
return 'Hello World!!!';
}
}
echo hw::hi();
以上例子使用了static和不使用static属性以后可以直接使用::方法从外面直接调用,但是为了效率和其他方面因素,还是建议使用static 来限制。
2,static 类内部调用方法
复制代码 代码示例:
class foo{
private static function c(){
return 'abcd';
}
public static function a(){
echo self::c();
}
}
foo::a();
使用了static 关键字来限制方法是必须使用self:: 在本类内部引用。
static 属性
复制代码 代码示例:
class foo{
public static $a;
public static function a(){
self::$a='abcd';
}
}
foo::a();
echo foo::$a;
同样可以使用static关键字来限制变量 这个时候变量不会一直保持上一次负值时候的值。
static 继承与使用
复制代码 代码示例:
class foo{
public static $a;
public static function a(){
return 'abcd';
}
}
class oo extends foo{
public static function a(){
echo '1234';
}
}
oo::a();
static 的继承和普通类的继承方法一样,并没有太大的区别。
复制代码 代码示例:
class foo{
public static $a;
public static function a(){
return 'abcd';
}
}
class oo extends foo{
public static function aa(){
echo parent::a();
}
}
oo::aa();
只是使用的时候有写区别,必须是parent::方法来引用父类的方法,并不能直接self::来使用父类的方法,如下例子,则不会显示任何值:
复制代码 代码示例:
class foo{
public static $a;
public static function a(){
return 'abcd';
} // www.jb200.com
}
class oo extends foo{
public static function aa(){
echo self::a();
}
}
oo::a();
最后一个php静态方法与属性的例子:
复制代码 代码示例:
<?php
class Status {
public static $ICE = -1;
public static $WATER = 0;
public static $VAPOR = 1;
}
?>?
<?php
$exStatus = Status::$ICE;
if ($exStatus == Status::$ICE)
echo "Ice";
else
echo "Water";
?>