preg_replace_callback () Problem

8

Ich verwende preg_replace_callback, um Textlinks mit Live-Links zu finden und zu ersetzen:

%Vor%

bis

%Vor%

Die Callback-Funktion, mit der ich die Funktion zur Verfügung stelle, gehört zu einer anderen Klasse. Wenn ich also versuche:

%Vor%

Ich bekomme eine Fehlermeldung, dass die Funktion nicht existiert. Irgendwelche Ideen?

    
Lee 04.07.2011, 18:37
quelle

2 Antworten

20

Wenn Sie in PHP eine Klassenmethode als Callback verwenden, müssen Sie die Callback-Form array verwenden. Das heißt, Sie erstellen ein Array, dessen erstes Element die Klasse ist (wenn die Methode statisch ist) oder eine Instanz der Klasse (falls nicht), und das zweite Element ist die Funktion, die aufgerufen werden soll. ZB

%Vor%

Die Funktion, die Sie aufrufen, muss natürlich in dem Bereich sichtbar sein, in dem Sie den Rückruf verwenden.

Siehe Ссылка , für Einzelheiten zu gültigen Rückrufen.

NB. Wenn Sie dort lesen, scheint es seit 5.2.3, dass Sie Ihre Methode verwenden können, solange die Callback-Funktion statisch ist.

    
tjm 04.07.2011, 18:48
quelle
4

Du kannst es so machen:

%Vor%

Referenz: Ссылка

    
Chris Laplante 04.07.2011 18:38
quelle

Tags und Links