zoukankan      html  css  js  c++  java
  • PHP魔术的封装方法总结!

     前几天学了一点封装的方法,给大家分享分享!当然还可以封装一个函数来连接数据库!接下来就是一些关键词的意思!

    __construct($argv1,$argv2,…)

    功能:类的构造方法,作用是初始化对象

    参数:任意多个,任意类型

    返回值:无

    __destruct()

    功能:类的析构方法,对象被销毁时被调用,作用是释放内存

    参数:无

    返回值:无

    __get($name)

    功能:当程序员试图调用一个未定义或者不可见的成员变量(属性)的时候就会调用该方法,这个时候程序试图调用的成员变量的返回值是该方法的返回值;

    参数:$name为试图调用的成员变量的名称,这个参数的传递是PHP自动完成的;

    返回值:类型(不确定)注意该方法可以设置成私有的(构造方法不要设置成私有的)。

    __set($name,$value)

    功能:当程序试图给一个未定义或者不可见的成员变量(属性)赋值的时候就会自动调用该方法;

    参数:$name,$value分别表示试图赋值的成员变量名称和成员变量的值,这两个参数的传递是PHP自动完成的;

    返回值:这个方法不会返回值 注意该方法可以设置成私有的(构造方法不要设置成私有的)。

    __toString()

    功能:当程序试图输出一个对象类型的变量的时候PHP会自动调用该方法;

    参数:没有参数,如果有会提示出错;

    返回值:字符型(该方法必须通过return返回一个字符串);

    __clone()

    功能:在用clone关键字克隆一个对象的时候PHP会自动调用这个方法,是为了给克隆出来的对象增添自己的属性和方法;

    参数:不用传递参数;

    返回值:不用返回值;

    __call($name,$argument)

    功能:当程序试图调用一个不存在的成员方法的时候会自动调用该方法;

    参数:PHP将自动调用的不存在的方法名传递给$name,不存在的方法中的参数整合为一个数组传递给$argument;

    返回值:不用返回值;

    __autoload($classname)

    功能:在指定的路径下自动查找并导入实例化需要使用的类

    参数:$classname为类名

    返回值:无  

    __isset()

    功能:当用isset($name)检测一个私有的成员变量的时候就会自动调用的方法,这个时候isset($name)的返回值就为该方法的返回值经过转化的布尔值(<除“0”>非空的字符串,非零,true,有单元的数组将会转化为true;0,“0”,空字符,NULL,没有单元的数组将会转化为false);

    参数:$name为试图检测的成员变量的名称,这个参数的传递是PHP自动完成的;

    返回值:类型(不确定)注意该方法可以设置成私有的(构造方法不要设置成私有的),当用isset()函数检测的是公

    有成员变量的时候可以直接检测,如果没有__isset()方法而直接检测私有成员会得到不准确的结果即isset()会始终返回false;         

    __unset()

    功能:当用unset($name)撤销一个私有的成员变量的时候就会自动调用该方法;

    参数:$name为试图撤销的成员变量的名称,这个参数的传递是PHP自动完成的;

    返回值:不能返回值,强制返回值将会出错,当用__unset()方法而直接撤销私有成员不会成功;         

  • 相关阅读:
    jvisualvm工具使用
    Java四种引用包括强引用,软引用,弱引用,虚引用。
    <实战> 通过分析Heap Dump 来了解 Memory Leak ,Retained Heap,Shallow Heap
    什么是GC Roots
    Memory Analyzer tool(MAT)分析内存泄漏---理解Retained Heap、Shallow Heap、GC Root
    JDK自带工具之问题排查场景示例
    websocket协议握手详解
    ssh 登陆服务器原理
    新版本macos无法安装mysql-python包
    如何将多个小值存储进一个值中
  • 原文地址:https://www.cnblogs.com/ws3366/p/3748006.html
Copyright © 2011-2022 走看看