Codeigniter PHP - parent :: __ construct
Lors de la prise en héritée d'un parent de la classe en PHP, en particulier dans Codeigniter ce n' parent::__construct or parent::model()
faire?
Comment en serait-il de faire la différence si je n'ai pas __construct
classe parent?
Et, ce qui est proposé?
Ajoutée
L'accent est mis plus sur Codeigniter précis en ce qui concerne un appel à parent::__construct
de différentes façons, selon les versions et aussi, si cela peut être omis dans le cas de Codeigniter permettrait de faire cela automatiquement.
source d'informationauteur Seong Lee
Vous devez vous connecter pour publier un commentaire.
C'est normal constructeur de la classe. Regardons l'exemple suivant:
Comme vous le voyez, la classe B hérite de toutes les valeurs et les fonctions de A. Donc le membre de la classe
$some_var
est accessible à partir de A et de B. Parce que nous avons ajouté un constructeur dans la classe B, le constructeur de la classe A ne peut PAS être utilisé lorsque vous créez un nouvel objet de la classe B.Maintenant, regardez les exemples suivants:
Comme vous pouvez le voir, parce que nous n'avons pas déclaré un constructeur, le constructeur de la classe A est implicitement utilisé. Mais on peut aussi faire ce qui suit, ce qui est équivalent à la classe C:
De sorte que vous n'aurez qu'à utiliser la ligne de
parent::__construct();
lorsque vous voulez un constructeur dans la classe enfant à faire quelque chose, ET d'exécuter le constructeur parent. Exemple donné:Plus d'informations peuvent être trouvées ici: http://php.net/manual/en/language.oop5.php
ces fonctions font exactement la même, seule la construction de fonction utilisé pour être nommé d'après le
la classe elle-même avant de PHP5. - Je dire, dans votre exemple, vous êtes en étendant le Modèle de la classe (et sur certaines anciennes version de CI puisque vous n'avez pas besoin d'utiliser CI_model), si je suis correct dans ce __construct est le même que le modèle().