2009-07-14 11 views
9

Ich versuche herauszufinden, ob ich das kann oder nicht. Ich habe eine Klasse namens Template. und ich möchte diese Klassenfunktionalität in einer anderen Datei erweitern, aber ich möchte den Namen nicht ändern.In PHP können Sie eine Klasse auf den gleichen Namen erweitern?

Muss ich es als

erklären

class template extends template 
{ 
    // code here 
    function foo() 
    { 

    } 
} 

oder kann ich es einfach so erklären?

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

    } 
} 

Antwort

-3

Vielleicht möchten classkit

+0

In diesem Fall ändern sich Codierungsmerkmale, es erlaubt das zu tun, aber nicht richtig & einfach. gerne eine Software aktualisieren sollte direkt über die Klasse sein. –

1

Wenn Sie eine Methode/Eigenschaft der ursprünglichen Klasse verwenden wollte man es erweitern können, aber Sie müssen einen anderen Namen verwenden, sonst erhalten Sie eine Fehlermeldung erhalten, um die Klasse erneut deklariert werden.

Grundsätzlich gilt:

class template {} 

/* both fail with "cannot redeclare class template */ 

class template extends template {} 

class template {} 
+1

Oh in Ordnung. Danke –

21

Nur um zu überprüfen, ob die übergeordnete Klasse in einem anderen Namensraum ist.

use SomeNamespace\Template as BaseTemplate; 

class Template extends BaseTemplate 
{ 
    //... 
} 
Verwandte Themen