加载类

加载类

一个单独的文件写的一个类,如果我们想使用这个类的话就需要加载这个类

 

第一种

include ("./ceshi.php");  //使用类的路径,绝对路径和相对路径都可以,就可以找到类并且加载进来
include_once("./ceshi.php");  //防止加载重复出现错误
$r = new Ren();

 

第二种

require("./ceshi.php");
require"./ceshi.php";   //可以不用写括号
require_once"./ceshi.php";  //同上防止报错

 

区别:include方法加载过来的类如果有错误,不会太影响下面代码执行,require会影响

 

第三种

//类的命名要规范
//类名+.class+.php
//所有的类要放在同一个文件夹下
function __autoload($classname){
      require_once "./ceshi/{classname}.class.php";
}

$r = new Ren();
var_dump($r);
$d = new Dog();
var_dump($d);

 

扩展

魔术方法

class Ren{
    public function __tostring(){     //在输出对象的时候自动调用
        return "这是一个人类";
    }
}

$r = new Ren();
echo $r;

 

克隆对象

class Ren{
    public $name;
    public function __tostring(){
       echo "这是个人";
   }
    public function __clone(){      //对克隆后的新对象进行一些修改
       $this->name = "李四";      //这个this是副本对象
   }
}

$r = new Ren();
$r->name = "张三";

$ri = clone $r;
var_dump($r1);

 

posted @ 2018-02-14 22:55  桃花灬仙人  阅读(134)  评论(0编辑  收藏  举报