__tostring() 注:能够直接输出对象
class Ren
{
public $name;
function Run()
{
echo "跑";
}
function __tostring()
{
teturn "name变量代表的是人员名称,Run方法是一个跑步的方法"
}
}
$r =new Ren();
echo $r;
克隆对象
class Ren
{
public $name;
function Run()
{
echo "跑";
}
function __tostring()
{
teturn "name变量代表的是人员名称,Run方法是一个跑步的方法"
}
function __clone() 注,写上这个,就是克隆自动调用
{
$this->name ="李四" 代表的是复本,复制完的对象 $that 代表原本对象
$r =new Ren();
$r->name ="张三";
$r1 = clone $r; clone 克隆相当于复制一个对象出来
var_dumo($r1);
var_dump($r);
加载类 这三种不仅可以引入外部的类文件,也可以引入Php文件,引用静态页面也可以
把类,加载到当前页面
第一种方式
include("写路径"); 不加括号也可以
$r = new Ren();
var_dump($r);
第二种方式
require("写路径"); 不加括号也可以
第三种方式
require_once("写路径") 不加括号也可以 代表请求一次
自动加载类
遵循的规范:
1.所有的类文件要放在同一个文件夹下
2.所有类文件的命名规则要一致
3.所有类文件名要和类名保持一致
方法
function __autoload($classname) 在造对象的时候执行
{
require $classname.".class.php";
}
$r = new Ren();
var_dump($r);
魔术方法 总结 ★
1. 构造函数 对类里面成员进行初始化 1,写法特殊 2,执行时间特殊,最先执行的方法
function __construct()
{
}
2.析构函数 在对象释放的时候自动执行
function __destruct()
{
}
3.__set方法
function __set($name,$value)
{
}
4.__get方法
function _get($name)
{
}
5.__tostring()方法
function __tostring()
{
}
6.__clone方法
function __clone()
{
}
7.__autoload方法
function __autoload($classname)
{
}
关键字 ★
1.class 定义类
2.访问修饰符 public protected private
3.new 造对象的关键字
4.$this 该对象本身
5.extends 代表继承
6.parent 代表父类
7.static 代表静态
8.self 代表该类
9.abstract 代表抽象,定义抽象类
10. interface 代表接口,用来定义接口的
11. implements 实现接口
12. clone 代表克隆
13. override 代表重写
14. overload 代表重载
15. oop 代表面向对象
16. final 写在定义类前面的,将该类定义为最终类,则该类不能被继承了