欢迎来到天天文库
浏览记录
ID:27996336
大小:67.05 KB
页数:6页
时间:2018-12-07
《php魔术方法总结》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、php魔术方法总结1、操作类私有属性的方法:_GET()获取私有属性的值_SET()设置私有属性的值_ISSET()判断是否存在该属性_UNSET()删除该属性使用示例:classPerson{//私有成员private$name;"人名private$sex;//性别private$age;"年龄//_get()方法用来获取私有属性privatefunction_get($property_name){if(isset($this->$property_name)){return$this->$property_name;}else{returnNUL
2、L;}}//_set()方法用來设置私有属性privatefunction_set($property_name,$value){$this->$property_name=$value;return$this;2、_call()监控一个对象中方法调用情况,若调用了不存在的、不在权限内的方法,会自动执行_call()屮内容。3、一autoload()在该类实例化之前,自动加载所需的文件,使用示例:function一autoload($classname){$classpath="./".$classname.’.php’;if(file_exists($
3、classpath)){require_once($classpath);}else{dieCclassfile’.$classpath•’notfound!’);}注意_autoloadO抛出的异常不能被catch语句块捕获并导致致命错误。4、_construct()和_destruct()类的构造函数和析构函数,类实例化默认执行的代码全在_加1说0^0里而。_destmCt()析构方法,PHP将在对象被销毁前(即从内存中清除前)调用这个方法默认情况下,PHP仅仅释放对象属性所占用的内存并销毀对象相关的资源.析构函数允许你在使用一个对象之后执行任意代码
4、来清除内存.当PHF决定你的脚本不再与对象相关时,析构函数将被调用.在一个函数的命名空间内,这会发生在函数return的时候.对于企局变量,这发生于脚本结來的时候.如果你想明确地销毁一个对象,你可以给指句该对象的变:U:分配任何其它伉.通常将变量赋值勤为NULL或者调用unset.5、_clone():当我们对一个实例化的对象进行浅复制时,对象内基本数值类型进行的是传值赋值,对象内的属性是传引用的复制,而不是生成新对象,意味着原对象属性值改变时,复制的对象属性值也会改变。但是对_clone()处理过的属性,不会随源对象州应属性值的改变而改变。例子:cla
5、ssAccount{publicSbalance;publicfunction—construct($balance){$this->balance=$balance;)}classPerson{private$id;private$name;private$age;publicSaccount;publicfunction—construct($name,$age,AccountSaccount){$this->name=$name;$this->age=Sage;$this->account=$account;}publicfunctionsetld
6、(Sid){$this->id=$id;}publicfunction_clone(){#复制方法,可在里由定义再clone是进行的揀作$this-〉id=0;$this->account=clone$this->account;#小加这一句,account扭clone是会只被复制引用,其中一个account的balance被修改另一个也同样会被修改))$person=newPerson("peter",15,newAccount(lOOO));$person->setld(1);$person2=clone$person;$person2-〉accou
7、nt-〉balance=250;var_dump($person,$person2);5、_toStringO:若类中定义」oStringO,则该类实例化的对象,在被echo/print等输出该对象时,会,动返回_1(^!4叩(){}中return的结果,不会报“对象不是字符串不能打印输出”之类的错误。示例://DeclareasimpleclassclassTestClass{public$foo;publicfunction_construct(Sfoo){$this->foo=$foo;}//定义一个_toString方法,返加一个成员属性$foo
8、publicfunction—toStringO{return$this-〉fo
此文档下载收益归作者所有