Ich habe folgende Funktion:
%Vor%Diese Funktion gilt offensichtlich nicht für ein bestimmtes Modell und ist kein Vorlagenhelfer. Wo wäre der geeignete Ort, um diese Funktion zu platzieren? (Bitte sag nicht "wo du willst.")
Dies könnte die Art von Sache sein, die Sie in einen Dienst stellen würden. Erstellen Sie eine Klasse wie folgt:
%Vor%Und dann definieren Sie es als Service. Wenn Sie YAML verwenden, würden Sie etwas in Ihre config.yml-Datei einfügen:
%Vor%Unter dieser Konfiguration erstellt Symfony eine einzelne Instanz Ihrer ArrayUtils und gibt all Ihren Controllern Zugriff darauf. Dann kannst du es so nennen:
%Vor%Dies ist alles Teil von Symfonys Abhängigkeits-Injection-Framework. Es ist ziemlich cool, und ich empfehle, es hier zu lesen: Ссылка
Alternative Option
Nun, das könnte ein bisschen zu viel für so einen kleinen Code sein. Wenn Sie dies nur in einem einzigen Paket verwenden, sollten Sie es nur in einen Basis-Controller einfügen und alle anderen Controller diesen Basis-Controller erweitern.
%Vor% Standardmäßig werden die Dienstprogrammklassen in den Namensraum Util
übernommen.
Wenn Sie Bundles verwenden, würde eine Klasse in den Namensraum YourBundle\Util
gehen. Wenn Sie nicht tun, würde es gehen Der Acme\Util
-Namespace - der src/Acme/Util
-Ordner.