Ich bin immer noch ein wenig neu in PHP OO Programmiertechniken und ich habe eine sehr einfache allgemeine Frage, ist es in der Regel schlechte Praxis, eine Klasse in einer Klasse zu instanziieren, dann diese Instanz übergeben zu einer anderen Klasse?PHP Eine Instanz einer Klasse an eine andere Klasse übergeben
Ich möchte in der Lage sein, eine Instanz einer bestimmten Klasse zu erstellen, die ich immer mit jeder Benutzeranforderung benötigen werde. Klasse zwei ist mehr als nur eine Hilfsklasse, idealerweise wäre es in meiner Anwendung ein "Loader", der die Ansichten lädt.
Erste Klasse, die die beiden anderen Klassen aufruft:
require 'classTwo.php';
require 'classThree.php';
class first {
public $classTwo, $classThree;
public function __construct() {
$this -> classTwo = new classTwo;
$this -> classThree = new classThree;
$this -> classThree -> displayNum($this -> classTwo);
}
}
Zweite Klasse, die die Hilfsklasse ist:
class classTwo {
public function returnVal() {
return 123;
}
}
dritte Klasse ist die Action-Klasse, wo aktuelle Arbeit und letzte Anzeige passieren würde:
class classThree {
public function displayNum($instance) {
echo $instance -> returnVal();
}
}
Insgesamt möchte ich nur wissen, ob das schlechte Praxis ist, weil ich nie gesehen habe es vorher gemacht.
Vielen Dank im Voraus!
upvoted, da es eine gute Frage zu stellen ist, und ich wünschte, ich hätte solche Fragen gebeten hatte, wenn Ich habe zuerst OOP gestartet. Sobald Sie mit Abhängigkeitsinjektion vertraut sind, die der Link in Jaitsus Antwort gut abdeckt, empfehle ich einen Blick auf [Pimple] (http://pimple.sensiolabs.org/), der ein DI-Container für alle Ihre Klassen und Parameter ist. –
Dank @ Adam-E Ich stimme definitiv zu und ich habe genug PHP OO Techniken gearbeitet und gelesen und habe nie die Methode gesehen, die ich vorher benutzte und ich dachte wer besser als Stack Overflow Benutzer zu fragen, die ich immer sehr hilfreich finde. Ich werde definitiv in Pimple schauen, danke! –