Home>Article>Backend Development> Classes and objects in PHP: Detailed graphic explanation of static attributes and static methods

Classes and objects in PHP: Detailed graphic explanation of static attributes and static methods

墨辰丷
墨辰丷 Original
2018-05-24 09:58:46 1972browse

这篇文章主要介绍了php中类和对象:静态属性、静态方法,需要的朋友可以参考下

在PHP中,使用关键字 static 修饰成员属性和成员方法被称为静态属性和静态方法。静态属性和静态方法不需要在类被实例化的情况下可以直接使用。

静态属性

与普通的成员属性不同,静态属性属于类本身而不属于类的任何实例。静态属性可以被看做是存储在类当中的全局变量,可以在任何地方通过类来访问它们。

由于静态属性不受任何具体对象的限制,所以不需要建立类实例,而可以直接引用类中的静态属性,使用语法格式如下:

类名称::$静态属性名称

其中,符号”::”被称作范围解析操作符,它可以用于访问静态成员、静态方法和常量,还可以用于覆盖类中的成员和方法。

如果想在同一类的成员方法中访问静态属性,可以通过在该静态属性的名称前加上操作符”self::”来实现。例子如下:


class DaBing{ static $bing=0; //定义静态属性 bing function addOne(){ self::$bing++; //调用同一类中的静态属性 bing echo"\$bing的值为:".self::$bing++; } } $obj=new DaBing(); $obj->addOne();


该程序使静态属性的值加1,执行结果为:1

静态方法

在PHP中将成员方法声明为静态,就称其为静态方法。由于静态方法不受任何具体对象的限制,所以不需要建立类实例就可以直接引用类中的方法。语法格式如下:

类名称::静态方法名称([参数1,参数2,……])
与调用静态属性相同,在类中使用操作符”self::”来表示调用同一类中的静态方法,例子如下:


class DaBing{ static function addOne($number){ //定义静态方法 addOne() echo"\$number+1="; echo $number+1; } static function showResult($number){ echo"\$number=".$number; echo"
"; self::addOne($number); //调用同一类中的静态方法 addOne() } } $number=100; DaBing::showResult($number);


该程序执行的结果为:

$number=100
$number+1=101


以上就是本文的全部内容,希望对大家的学习有所帮助。


相关推荐:

php图片水印的代码

PHP字符串定义方式及各自区别

php substr函数定义与用法汇总


The above is the detailed content of Classes and objects in PHP: Detailed graphic explanation of static attributes and static methods. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn