Blogger Information
Blog 18
fans 0
comment 0
visits 14891
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php 对象的静态属性和方法 有及 php类的常量
牛粪也香的博客
Original
982 people have browsed it

1、对象的静态属性或方法

image.png

2、类中的常量:

image.png

static_objj.php

<?phpnamespace _1102;
/**存在的意义: 若一个对象只用一次?没有必要再实例化 或是多个对象之间,需要共享一些属性或方法*/class static_obj{ public $attr= "原始访问"; public function getAttr() { return $this->attr; } public static $attrs='静态属性';//静态属性 public static function static_fun($pram1="")//静态方法 { /*  static_obj::$attrs="$pram1";//这样,就给$attrs 赋值了 return "静态方法".static_obj::$attrs; */ //优化:用static_obj::$attrs 或static_obj::static_func(); //这里的static_obj,若有一天改变了类名,那么,相关的static_obj就都得改变; //所以,这样子就会存在维护问题,于是就用self 代替 self::$attrs="$pram1";//给attrs赋值 return "静态方法".self::$attrs;//这样,即使改变了类名,里面的self都不用改 }}//原始访问$obj= new static_obj();//实例化echo $obj->getAttr();//获致实例化的属性或方法echo "<hr>";//静态属性或方法的访问////:: 双冒号作用是,范围解析符,一般用来解析类同的 属性或方法 echo static_obj::$attrs; echo "<hr>"; echo static_obj::static_fun();
 //静态属性初始化,及赋值:  echo "<hr>"; echo static_obj::static_fun('赋值1'); echo "<hr>"; echo static_obj::$attrs;

class_changliang.php

<?phpnamespace _1102;//define(name, value),定义常量define('USERNAME', 'username');$username="AAA";echo USERNAME;echo $username;
function username($value=''){ echo $username;}username();function username1($value=''){ echo USERNAME;}username1();
/*** */class ClassChangLiang { const NAME='China'; //类常量 必初始化,不能被重新赋值 // public static $attr='属性'; //可以不初始化,如:public static $attr;
}echo "<hr>";echo ClassChangLiang::NAME;echo "<hr>";echo ClassChangLiang::$attr;


Correction status:qualified

Teacher's comments:其实, 静态数据, 本质上是为了数据共享, 独立于函数之外的, 默认就是静态的, 所以静态, 通常都是全局, 但这也带来了一些问题, 但毕竟利大于弊, 代码和数据局部化是一个趋势...
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post