Wie kann eine benutzerdefinierte Klasse in ein Symfony Bundle eingebunden werden?

8

Ich habe ein Symfony-Bundle, wo ich eine benutzerdefinierte Klasse verwenden muss. Diese Klasse muss nicht von der gesamten Website aus zugänglich sein, sondern nur in einem Controller dieses Bundles. Ich habe ein paar Lösungen zu den Anbietern gesehen, aber das ist ziemlich schwer und in meinem Fall nicht notwendig. Hat jemand eine einfachere Lösung?

    
maxime 03.07.2013, 14:09
quelle

2 Antworten

5

Die Klasse muss in Acme\Bundle\Model namespace und im Ordner erstellt werden, nicht \Class ! Wer sagt das?!

%Vor%

Verwendung in Controllern:

%Vor%

Der Name der Datei ( Utility.php ) muss dem Klassennamen entsprechen.

    
Croll 02.04.2015, 16:19
quelle
20

Dies sind die Namensräume .

Von php.net :

  

Was sind Namensräume? In der weitesten Definition sind Namespaces eine Möglichkeit, Elemente einzukapseln.

Geben Sie einfach Ihren Namespace an den Anfang Ihrer benutzerdefinierten Klasse.

src / Acme / DemoBundle / Modell / MyClass.php

%Vor%

und verwenden Sie es in Ihrem Controller:

src / Acme / SomeOtherBundle / Controller / DefaultController.php

%Vor%     
Carrie Kendall 03.07.2013 14:21
quelle

Tags und Links