php 5 方法的重载
来源:互联网 发布:51单片机智能交通灯 编辑:程序博客网 时间:2024/04/27 18:20
//php 5 中可以使用 __call() 方法实现方法的重载。
//函数原型为 mixed __call(string name, array arguments)
//mixed 是一个伪类型约定。说明一个参数可以接受多种不同的类型
class A{
protected $v;
public function __construct($v){
$this->v = $v;
}
public function __call($funcname, $paras){
//name为要重载的函数名, arguments 则为调用重载函数时传入的参数所组成的数组,第一个参数在arguments[0]
if($funcname !== 'add') return null;
if(count($paras) == 1) return $this->add1($paras[0]);
if(count($paras) == 2) return $this->add2($paras[0], $paras[1]);
if(count($paras) == 3) return $this->add3($paras[0], $paras[1], $paras[2]);
}
// private function add(){
// echo "shabi/n";
// }
private function add1($v1){
echo "调用add1函数/n";
return $this->v + $v1;
}
private function add2($v1, $v2){
echo "调用add2函数/n";
return $this->v + $v1 + $v2;;
}
private function add3($v1, $v2, $v3){
echo "调用add3函数/n";
return $this->v + $v1 + $v2 + $v3;
}
}
$a = new A(100);
$r = $a->add(1);
echo $r."/n";
$r = $a->add(1, 2);
echo $r."/n";
?>
- php 5 方法的重载
- PHP的“重载方法”
- PHP 面向对象的方法重载
- PHP中实现重载的方法
- PHP 面向对象的方法重载
- PHP 方法重载例子
- php实现方法重载
- php方法重载
- PHP 重载方法 __call()
- paip.编程语言方法重载实现的原理及python,php,js中实现方法重载
- 方法重载- Java vs PHP
- 05-php中的方法重载
- PHP属性重载,魔术方法
- PHP 面向对象:方法重载
- PHP那些事:面向对象的方法重载
- 关于PHP中类方法的重载问题
- 探秘PHP 5的对象重载技术
- PHP的伪重载
- socket编程
- C++容器类 Vector教程
- 第三章 代码的坏味道(一)
- 行指针和列指针-专题分析(转至汪老师的C语言)
- JPEG文件格式解析
- php 5 方法的重载
- 在ubuntu 10.04及以上版本为chrome安装flash
- C语言运算符优先级存在的问题
- oracle pl/sql 基础
- ServletConfig与ServletContext
- Tomcat中的类加载器
- 开播
- ArcMap中创建网格的方法
- javascript验证类