Php oop-在子/继承函数中使用父参数
我有以下脚本:Php oop-在子/继承函数中使用父参数,php,oop,inheritance,Php,Oop,Inheritance,我有以下脚本: <?php class A { protected static $aliases = []; public static function doSomething() { foreach (self::$aliases as $column => $alias) { // do something echo "$column: $alias" . PHP_EOL;
<?php
class A {
protected static $aliases = [];
public static function doSomething()
{
foreach (self::$aliases as $column => $alias) {
// do something
echo "$column: $alias" . PHP_EOL;
}
}
}
class B extends A {
protected static $aliases = [
'id' => 'real_id',
'name' => 'real_name',
];
}
$obj = B::doSomething(); // does nothing
您需要将self::$aliases
更改为静态::$aliases
,以引用A
中B
的别名
请看这里:
尝试使用static访问子属性,如下所示
public static function doSomething()
{
foreach (static::$aliases as $column => $alias) {
// do something
echo "$column: $alias" . PHP_EOL;
}
}
查看更好的参考资料此问题是否回答了您的问题?完美的谢谢你的回答。
public static function doSomething()
{
foreach (static::$aliases as $column => $alias) {
// do something
echo "$column: $alias" . PHP_EOL;
}
}