PHP类中的静态方法使用实例.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PHP类中的静态方法使用实例

PHP类中的静态方法使用实例   在php中静态方法我们就直接在函数或变量前加一个static就可以了,使用的时候和静态变量差不多,不需要实例化,直接用::调用了,下面我来给大家举几个关于静态方法实例。   PHP也不例外!所谓静态方法(属性)就是以static关键词标注的属性或者方法(例如:静态属性public static username;)   静态方法和非静态方法最大的区别在于他们的生命周期不同,用一个实例来说明   静态方法定义   定义静态方法很简单,在声明关键词function之前加上static,例如:   代码如下复制代码   class A static function fun // do somathing 静态方法使用   使用的时候和静态变量差不多,不需要实例化,直接用::调用,例如:   代码如下复制代码   A::fun 对比普通方法   因为静态方法的调用不需要实例化, 所以在静态方法中引用类自身的属性或者方法的时候会出错,也就是形如self和$this是错误的。   代码如下复制代码   class MyClass public $num 5;   function __construct $this- num 10; function fun_1 echo I am a public method named fun_1.n;   echo The num of object is $this- num .n; static function fun_2 echo I am a static method named fun_2.n; function fun_3 $n echo The arg is $n n; $m new MyClass;   $m- fun_1 ;   $m- fun_2 ;   $m- fun_3 test ;   MyClass::fun_1 ;   MyClass::fun_2 ;   MyClass::fun_3 test ;   输出结果:   lch@localhost:php $ php class_method.php   I am a public method named fun_1.   The num of object is 10.   I am a static method named fun_2.   The arg is test   I am a public method named fun_1.   PHP Fatal error: Using $this when not in object context in /Users/lch/program/php/class_method.php on line 14   再看一实例   用一个实例来说明。   代码如下复制代码   class user public static $username; //声明一个静态属性   public $password; //声明一个非静态属性   function __construct $pwd echo ‘Username:’,self::$username; //输出静态属性   self::$username ‘admin’; //为静态属性赋值   $this- password $pwd; //为非静态属性赋值 public function show //输出类属性   echo ‘   Username:’,self::$username;   echo ‘   Password:’,$this- password; public static function sshow echo ‘   Username:’,self::$username;   echo ‘   Password:’,$this- password; user::$username ‘root’; // 为赋值user类的静态属性赋值   $objUser new user ’123456′ ; //实例化user类   $objUser- sshow ;   unset $objUser ;   echo ‘   Username:’,user::$username;   /*   * 输出结果为:   * Username:root   * Username:admin   * Password:123456   * Usern   ame:admin   * */   从这里实例中可以看出,静态属性在类实例化以前就起作用了,并且在对象被销毁时静态属性依然可以发挥作用!   

文档评论(0)

wuyuetian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档