Wie man eine Zend \ Log Instance im ServiceManager in ZF2 registriert

7

Ich frage mich, wie Sie am besten eine Logger-Instanz über den ServiceManager in ZF2 initiieren und wiederverwenden können. Natürlich kann ich eine einfache Methode in jeder Klasse verwenden, wie:

%Vor%

aber ich habe mich gefragt, wie man eine ähnliche Struktur in der global.php am besten registriert. Soweit kann ich

füge folgendes zu global.php

hinzu %Vor%

Wenn ich versuche, es durch aufzurufen:

%Vor%

Ich bekomme ein:

%Vor%     
Al-Punk 27.07.2012, 11:28
quelle

5 Antworten

20

Fügen Sie der 'global.php' die folgenden Daten hinzu:

%Vor%

Und dann können Sie

anrufen %Vor%     
arturgrigor 14.10.2012, 20:11
quelle
11

Alternativ und eleganter könnten Sie einen Protokoll-Listener einrichten und Ihren Logger von Ihrer App entkoppeln. Das EventManager ist eine sehr mächtige Komponente und ZF2 ist im Grunde ein ereignisgesteuertes Framework.

In deinem module.php kannst du etwas hinzufügen wie:

%Vor%

Dann von überall, z. Von einem Controller aus können Sie Folgendes tun:

%Vor%     
markus 08.02.2013 00:44
quelle
2

Vielleicht verwenden Sie die abstrakte Logger-Fabrik für die Konfiguration anstelle der normalen Fabrik

Ссылка

%Vor%     
Manuel 20.06.2014 19:15
quelle
1

Bitte versuchen Sie es erneut mit dem absoluten Pfad \

%Vor%     
Thorsten 18.09.2012 19:08
quelle
1

Ich habe ein Standard-Datenbank-Writer-Objekt in meinem Bootstrap erstellt und im ServiceManager registriert.

%Vor%

Der AbstractController ist eine Instanz von "ServiceLocatorAwareInterface". Also kann ich einfach meinen Controller aufrufen

%Vor%     
Matthias Lill 18.02.2013 18:48
quelle