メインスコープの保護されたststic属性として子クラスから値を取得するにはどうすればよいですか。私はこれらの行で使用しますが、機能しません。
self::$table_name="Table_shape_B";
self::$table_name="Table_shape_C";
これらの行を見たいですありがとう。
selected Database Table name: Table_shape_B
selected Database Table name: Table_shape_C
出力は
new B : are created :
new C : are created :
selected Database Table name:
selected Database Table name:
ここに私のコード:
<?php
abstract class Class_A {
protected static $table_name;
//Class_B Database Table name = "Table_shape_B"
//Class_CA Database Table name = "Table_shape_C"
public function __construct() {
echo "<br />"." new ".get_class($this)." : are created :";
}
public function get_table_name_protected() {
return self::$table_name;
}
}
class B extends Class_A {
//self::$table_name="Table_shape_B";
}
class C extends Class_A {
//self::$table_name="Table_shape_C";
}
$NewObject1= new B ( );
$NewObject2= new C ( );
echo "<br />".' selected Database Table name: '.$NewObject1->get_table_name_protected();
echo "<br />".' selected Database Table name: '.$NewObject2->get_table_name_protected();
?>