克隆对象及加载类
克隆对象__clone()方法
有的时候我们需要在一个项目里面,使用两个或多个一样的对象,如果你使用“new”关键字重新创建对象的话,再赋值上相同的属性,这样做比较烦琐而且也容易出错,所以要根据一个对象完全克隆出一个一模一样的对象,是非常有必要的,而且克隆以后,两个对象互不干扰。
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);
结果:

自动加载类 __autoload()函数
当在一个PHP文件中需要调用另一个文件中声明的类时,就需要通过include把 这个文件引入。不过有的时候,在文件众多的项目中,要一一将所需类的文件都include进来,是一个很让人头疼的事,所以我们能不能在用到什么类的时 候,再把这个类所在的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";
}

浙公网安备 33010602011771号