面向对象的其他知识
__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 自动加载类的机制
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?