面向对象的其他知识

__tostring()   方法

能够直接输出对象

例:

<?php
class Ren
{
    public $name;
    
    function Run()
    {
        echo "跑";
    }
    
    function __tostring()
    {
        return "name变量代表的是人员名称,Run方法是一个跑的方法";
    }
}

$r = new Ren();
echo $r;
<?>

克隆对象    关键字  clone

例:

<?php
class Ren
{
    public $name;
    
    function Run()
    {
        echo "跑";
    }
    
    function __tostring()
    {
        return "name变量代表的是人员名称,Run方法是一个跑的方法";
    }
    
    //克隆对象的时候自动调用的方法
    function __clone()
    {
        $this->name = "李四";        &this代表副本,复制完的对象
    }
}

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

$r1 = clone $r;
var_dump($r1);
var_dump($r);
?>

加载类

新建一个PHP格式的文件,保存,起名

起名的规范   类名.class.php

建好后里面只有PHP页面,写开头<?php   内容       结尾可以省略

使用的方式:

1、   include(文件的路径);  路径一般这样写 ( "./类名.class.php");

 就是把里面内容引用到当前页面了

2、   include空格"./类名.class.php";

 这种方式也可以

3、   require ("./类名.class.php");

 引用的意思

4、  require空格 "./类名.class.php";

 也可以

5、require__once("./类名.class.php");

请求一次

6、require__once空格"./类名.class.php";

也可以

以上几种不仅可以引用外部class文件,也可以引用其他文件(PHP或HTML)

自动加载类

要求:1.所有的类文件要放在同一个文件夹下
     2.所有类文件的命名规则要一致
     3.所有类文件的名字要和类名保持一致
7、function __autoload()    里面要写变量类名做参数

    {

       require $类名.".class.php";

   }

__auntoload    自动加载类的机制

原文地址:https://www.cnblogs.com/qishuang/p/6183698.html