3

PHPで子クラスの静的メソッドから親クラスの非静的メソッドを呼び出すにはどうすればよいですか? 助けてください。

 public static function countryArray(){
    $sql = "SELECT `country_id`, `country_name` FROM `dr_tbl_country`";
    $resultSet  = parent::dBQueryExecute($sql);
    if(mysql_num_rows($resultSet) > 0){
        $countryArray = array();
        while($result = mysql_fetch_array($resultSet)){
            extract($result);
            $countryArray[$country_id]['country_id'] = $country_id;
            $countryArray[$country_id]['country_name'] = $country_name;
        }
        return $countryArray;       
    }else{
        return false;
    }
}
4

3 に答える 3

2

できません; 静的アイテムは他の静的アイテムと連動します。

于 2012-12-13T07:00:23.443 に答える
1

静的メソッドから非静的メソッドを呼び出すことはできないと確信しています(親または子に関係なく)。これは、非静的メソッドをどのインスタンスで呼び出す必要があるかを知る方法がないためです....静的メソッド内から。これは、すべての OOP 言語に当てはまります。

于 2012-12-13T07:04:31.637 に答える
1

要するに、あなたはできません

static子クラスのメソッドから親クラスの非メソッドを呼び出すことはできませんstatic

あなたの最善の選択肢は、メソッドを非にすることですstatic

于 2012-12-13T07:07:03.477 に答える