PHP 格中方法
1.__tostring()能够直接输出对象
class Ren { public $name; function Run() { echo "跑"; } function __tostring() { return "name变量代表的是人员名称,Run方法是一个跑的方法";//这里 可以写 任何 提示性信息 } } $r = new Ren(); echo $r;
结果:
2.克隆对象 colone
class Ren { public $name; function Run() { echo "跑"; } function __tostring() { return "name变量代表的是人员名称,Run方法是一个跑的方法"; } //克隆对象的时候自动调用的方法; 如果需要修改 原来 的某些内容 则可以直接在内部写 如下 function __clone()//这是个魔术方法 与下面的区别 { $this->name = "李四"; } } $r = new Ren(); $r->name = "张三"; $r1 = clone $r;注意没有小括号 这是个关键字 var_dump($r1); var_dump($r);
结果:
3.加载类 除最后一种 其他的 都是 只能加载一次 用几次就加载几次 最后一种 用的时候自动加载(以下几个例子加载的类 和 PHP 代码文件放在同一个文件夹下面)
加载类 include("./Ren.class.php"); include "./Ren.class.php"; require("./Ren.class.php"); require "./Ren.class.php"; require_once("./Ren.class.php"); require_once "./Ren.class.php"; 自动加载类 1.所有的类文件要放在同一个文件夹下 2.所有类文件的命名规则要一致 3.所有类文件的名字要和类名保持一致 function __autoload($classname) { require "./libs/".$classname.".class.php"; } $r = new Ren(); var_dump($r); $d = new cat();
方法总结:
1 //构造函数,对类里面成员进行初始化 2 function __construct() 3 { 4 } 5 //析构函数,在对象释放的时候自动执行 6 function __destruct() 7 { 8 } 9 10 //__set方法 11 function __set($name,$value) 12 { 13 } 14 //__get方法 15 function __get($name) 16 { 17 } 18 19 //__tostring()方法 20 function __tostring() 21 { 22 } 23 24 //__clone方法 25 function __clone() 26 { 27 } 28 29 //__autoload方法 30 function __autoload($classname) 31 { 32 }
关键字总结
1 class 定义类 2 访问修饰符 public protected private 3 new 造对象的关键字 4 $this 代表该对象本身 5 extends 代表继承 6 parent 代表父类 7 static 代表静态 8 self 代表该类 9 abstract 代表抽象,定义抽象类 10 interface 代表接口,用来定义接口 11 implements 实现接口 12 clone 代表克隆 13 override 重写 14 overload 重载 15 oop 代表面向对象 16 final 写在定义类前面的,将该类定义为最终类,则该类不能被