我在fileA.php中有一个类,如下所示:
class Test {
private foo;
public function array() {
$this->$foo = array ( 'a', 'b', 'c', 'd', 'e' );
return $foo;
}
}
我希望将该方法返回的数组更改为:
array('x', 'y', 'z')
我不确定这是否是正确的方式,但这是我在fileB.php中尝试过的:
require_once('fileA.php');
class TestB extends Test {
public function array() {
$this->$foo = array('x', 'y', 'z');
return $foo;
}
}
有没有可能做这样的修改?任何帮助都将不胜感激。
谢谢
发布于 2018-07-04 03:59:39
您可以将类更改为具有$foo
的初始值,然后使用公共方法来更改此值,而不是创建新的类。
class Test {
// Value with starting value, or could be set in the constructor
private $foo = array ( 'a', 'b', 'c', 'd', 'e' );
public function array() {
return $this->foo;
}
public function setFoo ( $newArray ) {
$this->foo = $newArray;
}
}
$a = new Test();
print_r($a->array());
$a->setFoo(array('x', 'y', 'z'));
print_r($a->array());
给予..。
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
)
Array
(
[0] => x
[1] => y
[2] => z
)
https://stackoverflow.com/questions/51161960
复制相似问题