• php自动加载类


    先说一个魔术方法 

    __tostring()方法

    当我们在定义类中成员后,通过构建对象,我们无法直接通过输出对象得到对象的内容,这时我们可以通过构造一个魔术方法__tostring(),在构建对象的同时,启用这个魔术方法,从而达到直接输出对象内容的目的

    例子

    class Ren
    {
    public $name;

    public function __tostring()
    {
    return "该类是人类,name代表姓名";
    }
    }

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

    克隆

    通过克隆的方法,可以不构建对象,直接克隆已经创建的对象,使克隆对象得到原对象的所有属性方法等全部内容

    克隆有两种方式 1.直接调用在类中通过克隆的方法来实现 2.外部通过构造克隆对象来实现

    class Ren
    {
    public $name="张三";

    public function __clone()      //克隆方法1
    {
    $this->name = "李四";
    }
    }

    $r = new Ren();

    $c = clone $r;           //克隆方法2,
    echo $r->name;
    echo $c->name

    加载类


    当本页面引用外部类文件时,通过加载类的方法来实现 (外部类的命名规则  类名.class.php)

    加载类的实现方法有下列几种

    1.    include("./Ren.class.php");   //会引用类的全部,包括错误,从而可能会引起本页面崩溃
    2.    include "./Ren.class.php";

    3.    require("./Ren.class.php");    //只会引用类的相关内容,不容易引入错误而产生的崩溃
    4.    require "./Ren.class.php";
    5.    require_once("./Ren.class.php");     //可以写多个而不会报错
    6.    require_once "./Ren.class.php";

    自动加载类  (__autoload)
    1.所有的类文件写在同一个目录下
    2.类文件的命名规则要一致
    3.类的文件名要和类名保持一致

     例:

      function __autoload($classname)
            {
              require_once("./".$classname.".class.php");
            }

  • 相关阅读:
    WPF中Datagrid其中一列使用图片显示
    已加载dcrf32.dll,但没有找到DllRegisterServer输入点。无法注册这个文件
    WPF——实现超链接功能
    AJAX overrideMimeType作用
    解决 remote: The project you were looking for could not be found.
    子div有内容,父div高度为0的解决方法
    《快速构建Windows 8风格应用》系列文章汇总
    全新的Windows Phone 8开发资源汇总
    Windows 8.1:Windows 8续集演绎[翻译]
    A星寻路算法
  • 原文地址:https://www.cnblogs.com/du892294464/p/6740981.html
Copyright © 2020-2023  润新知