PHP - l'Extension de la Classe

J'ai fait beaucoup de code en PHP qui est orienté objet, mais jusqu'à maintenant, toutes mes classes ont été, "singulier", je suppose que vous pouvez l'appeler. Je suis dans le processus de l'évolution de plusieurs classes (qui ont 5 ou si des méthodes identiques) d'étendre une classe (pour me débarrasser de code en double). Je suis en cours d'exécution dans un certain nombre de questions.

Je suis en train d'essayer d'accéder à une méthode dans une classe parent, mais vous pouvez voir le problème.

Classe Parent:

 class DatabaseObject { 

     public static function find_all() {
        return self::find_by_sql("SELECT * FROM " . self::$table_name);
    }
}

Enfant De La Classe:

class Topics extends DatabaseObject {

    protected static $table_name = "master_cat";
    protected static $db_fields = array('cat_id', 'category');
    public $cat_id;
    public $category;

  }

Code en essayant d'accéder à toutes les informations de ce tableau en php/html fichier:

$topics=Topics::find_all();

foreach($topics as $topic):
    echo $topic->category;
endforeach; 

Comme vous pouvez le voir, la Plupart du code n'a pas été fusionné à la nouvelle façon de faire les choses. J'ai besoin de changer le self::$nom_table qui ne fonctionne plus dans la voie nouvelle que je suis en train de faire des choses. Je vais avoir environ 5 Classes de l'extension de cet objet, alors quel est le meilleur moyen de codage donc je peux accéder à des tables différentes avec une seule méthode (plutôt que de les inclure ce exact find_all() la méthode en 5 classes différentes.

Je vous recommande de lire plus au sujet de la programmation orientée objet et en particulier la manière dont il est implémenté en PHP. En vous donnant un code de travail ne suffit pas à résoudre le vrai problème.
Au contraire, j'apprends par d'autres personnes de code. Je vais peut-être attendre que quelqu'un de réellement répondre à la question maintenant.
J'ai lu "j'ai appris à partir d'autres peuples code" trop souvent, à savoir, qu'il ne fonctionne pas bien. Vous devriez envisager la lecture d'un livre.
Linkspam: une, deux, trois, quatre
Je pense qu'il n'y a rien de mal avec la question, non, personne n'avait de réponse. Mais grâce à @Matthijs nous éclaire

OriginalL'auteur KickingLettuce | 2012-06-25