• 面向对象的其他知识


    __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    自动加载类的机制

  • 相关阅读:
    BZOJ 1726: [Usaco2006 Nov]Roadblocks第二短路
    BZOJ 1708: [Usaco2007 Oct]Money奶牛的硬币
    BZOJ 1642: [Usaco2007 Nov]Milking Time 挤奶时间
    BZOJ 1611: [Usaco2008 Feb]Meteor Shower流星雨
    BZOJ 1610: [Usaco2008 Feb]Line连线游戏
    BZOJ 1609: [Usaco2008 Feb]Eating Together麻烦的聚餐
    BZOJ 1607: [Usaco2008 Dec]Patting Heads 轻拍牛头
    BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草
    BZOJ 1083: [SCOI2005]繁忙的都市
    STL set的用法
  • 原文地址:https://www.cnblogs.com/zhaodahai/p/6830668.html
Copyright © 2020-2023  润新知