比如我在看《PHP核心技术与最佳实践》,照着书一边敲代码一边想,费那个劲构造什么啊直接这样不就完了:
class benz {
public $car = new car();
当然不行了,我就查手册,原来属性初始化的值只能是常数、常量之类。手册我是看过的,还不止一遍,但一扫而过果然跟没看一样。只有真的报错了运行不过,才能真正记住。
书上的代码:
<!--lang: php-->
<?php
//继承比组合代码量更少
class car {
public function addoil() {
echo 'Add oil', PHP_EOL;
}
}
class bmw extends car {
}
class benz {
public $car;
public function __construct() {
$this -> car = new car();
}
public function addoil() {
return $this -> car -> addoil();
}
}
</source>
class benz {
public $car = new car();
当然不行了,我就查手册,原来属性初始化的值只能是常数、常量之类。手册我是看过的,还不止一遍,但一扫而过果然跟没看一样。只有真的报错了运行不过,才能真正记住。
书上的代码:
<!--lang: php-->
<?php
//继承比组合代码量更少
class car {
public function addoil() {
echo 'Add oil', PHP_EOL;
}
}
class bmw extends car {
}
class benz {
public $car;
public function __construct() {
$this -> car = new car();
}
public function addoil() {
return $this -> car -> addoil();
}
}
</source>