php 多继承的几种常见实现方法示例
作者:ztblog 时间:2023-11-22 19:03:19
本文实例讲述了php 多继承的几种常见实现方法。分享给大家供大家参考,具体如下:
class Parent1 {
function method1() {}
function method2() {}
}
class Parent2 {
function method3() {}
function method4() {}
}
class Child {
protected $_parents = array();
public function Child(array $parents=array()) {
$this->_parents = $parents;
}
public function __call($method, $args) {
// 从“父类"中查找方法
foreach ($this->_parents as $p) {
if (is_callable(array($p, $method))) {
return call_user_func_array(array($p, $method), $args);
}
}
// 恢复默认的行为,会引发一个方法不存在的致命错误
return call_user_func_array(array($this, $method), $args);
}
}
$obj = new Child(array(new Parent1(), new Parent2()));
print_r( array($obj) );die;
$obj->method1();
$obj->method3();
运行结果:
Array
(
[0] => Child Object
(
[_parents:protected] => Array
(
[0] => Parent1 Object
(
)[1] => Parent2 Object
(
))
)
)
interface testA{
function echostr();
}
interface testB extends testA{
function dancing($name);
}
class testC implements testB{
function echostr(){
echo "接口继承,要实现所有相关抽象方法!";
echo "<br>";
}
function dancing($name){
echo $name."正在跳舞!";
}
}
$demo=new testC();
$demo->echostr();
$demo->dancing("模特");
运行结果:
接口继承,要实现所有相关抽象方法!
模特正在跳舞!
希望本文所述对大家PHP程序设计有所帮助。
来源:https://blog.csdn.net/ztblog/article/details/80171393
标签:php,多继承
0
投稿
猜你喜欢
基于opencv和pillow实现人脸识别系统(附demo)
2023-04-06 10:28:53
python 网络编程要点总结
2023-09-30 06:15:38
微信公众号token验证失败解决方案
2022-01-22 14:33:45
CentOS8部署LNMP环境之编译安装mysql8.0.29的教程详解
2024-01-18 04:54:14
PyInstaller如何打包依赖文件至目标程序目录
2021-05-31 12:08:12
基于Vue实现图书管理功能
2024-04-27 16:16:59
Mootools 1.2教程(19)——Tooltips
2008-12-25 13:26:00
Python Web后端开发中的增查改删处理
2022-11-21 06:15:42
Go打包二进制文件的实现
2024-05-08 10:15:19
Python 16进制与中文相互转换的实现方法
2023-10-03 15:58:35
JavaScript实现大文件上传的示例代码
2024-05-28 15:40:23
Python 通过requests实现腾讯新闻抓取爬虫的方法
2022-03-19 17:17:02
如何解决ORA-01843与NLS_DATE_FORMAT问题
2023-06-30 20:57:14
数据库清除日志文件(LDF文件过大)
2024-01-14 04:05:36
MySQL如何设置某个字段的值自增
2024-01-27 09:49:09
Python3使用SMTP发送带附件邮件
2022-02-10 12:05:53
Golang中map的深入探究
2024-04-26 17:23:35
python之pkl文件的用法及说明
2021-02-21 21:44:57
为什么我们需要在SQL Server里更新锁
2024-01-16 01:37:39
Python中使用md5sum检查目录中相同文件代码分享
2022-10-31 19:57:59