12
votes

En PHP, pouvez-vous étendre une classe au même nom?

J'essaie de trouver la météo que je peux le faire ou non. J'ai une classe appelée modèle. et je veux étendre cette fonctionnalité de classes dans un autre fichier, mais je ne veux pas changer le nom.

Est-ce que je le déclare comme p>

p> p> xxx pré>

p>

ou est-ce que je viens de le déclarer comme ça? p>

code> p>

class template
{
   // write function
   function foo()
   {

   }
}


0 commentaires

4 Réponses :


1
votes

Si vous vouliez utiliser une méthode / une propriété de la classe d'origine, vous pouvez l'étendre, mais vous devez utiliser un nom différent, sinon vous obtiendrez une erreur sur redécligé la classe.

Fondamentalement: < Pré> xxx


0 commentaires

0
votes

Je suis sûr que vous ne pouvez pas. Je vous suggère de faire ce qui suit:

class Template extends TemplateBase
{
    // code
}


0 commentaires

-3
votes

Vous voudrez peut-être consulter Classkit


1 commentaires

Dans ce cas, les caractéristiques de codage changent, il permet de le faire, mais pas de manière facile et facile. J'aime mettre à niveau un logiciel doit être directement via une classe.



33
votes

uniquement si la classe mère est dans un autre espace de noms.

use SomeNamespace\Template as BaseTemplate;

class Template extends BaseTemplate 
{
     //...
}


0 commentaires