将a,b,c都显示出来
$a:
object(Car)#1 (1) {
["name"]=>
string(7) "new car"
}
$b:
object(Car)#2 (1) {
["name"]=>
string(7) "new car"
}
$c:
object(Car)#3 (1) {
["name"]=>
string(7) "new car"
}
这样看,他们都是由同一个类实例化的?所以后面会有#num?
$a:
object(Car)#1 (1) {
["name"]=>
string(7) "new car"
}
$b:
object(Car)#2 (1) {
["name"]=>
string(7) "new car"
}
$c:
object(Car)#3 (1) {
["name"]=>
string(7) "new car"
}
这样看,他们都是由同一个类实例化的?所以后面会有#num?
2014-12-06
php的重载只是动态的创建属性与方法,与其他语言不一样。
而且重载方法,并不是创建一个方法,只是转调用__call函数。而属性会创建。
而且重载方法,并不是创建一个方法,只是转调用__call函数。而属性会创建。
2014-12-06
public function __call($name,$args){
if ($name=='speedDown'){
$this->speed-=10;
}
}
if ($name=='speedDown'){
$this->speed-=10;
}
}
2014-12-06
错了吧,就算覆盖了$car只调用了一次speedUp,而且初始速度为0,怎么可能是60(→_→)
class Truck{
public function speedUp(){
$this->speed+=50;
return $this->speed;
}
}
class Truck{
public function speedUp(){
$this->speed+=50;
return $this->speed;
}
}
2014-12-06
已采纳回答 / sophia_yu
$data = array();这句定义了一个数组类型的变量,$row是从结果集中取出的一条数据,记住,是一条数据!如果把$data[] = $row;换成$data = $row;,那么$data的值只是此循环最后的一条数据,前面循环的数据都被覆盖了
2014-12-06