<?php
class Car {
public $speed = 10;
//在这里使用重载实现speedDown方法
public function __call($name, $args){
if( $name == 'speedDown' ){
$this->speed-=10;
}
}
}
$car = new Car();
$car->speedDown(); //调用不存在的speedDown方法
echo $car->speed;
class Car {
public $speed = 10;
//在这里使用重载实现speedDown方法
public function __call($name, $args){
if( $name == 'speedDown' ){
$this->speed-=10;
}
}
}
$car = new Car();
$car->speedDown(); //调用不存在的speedDown方法
echo $car->speed;
2015-05-05
看了半天算是看懂了,这里的重载不是c++或者java意义上的重载,而是php的一个默认函数__call($name,$args),当你要调用的函数不存在时,函数名(speedDown)传给形参$name,里面的参数传给形参$args,然而内部具体执行需要自己编写。(我的理解,应该就是这样)
2015-05-05
$p = '/[\w]+\-[1-9]+/';
$str = "我的电话是010-12345678";
preg_match($p, $str, $match);
echo $match[0];
$str = "我的电话是010-12345678";
preg_match($p, $str, $match);
echo $match[0];
2015-05-04