unexpected T_FUNCTION Fehler bei der Verwendung von " - Funktion (array $matches)"
Hallo, ich bin mit dem folgenden code, aber ich bin immer ein "unexpected T_FUNCTION" syntax-Fehler für die zweite Zeile. Irgendwelche Vorschläge?
preg_replace_callback("/\\[LINK\=(.*?)\\\](.*?)\\[\/LINK\\]/is",
function (array $matches) {
if (filter_var($matches[1], FILTER_VALIDATE_URL))
return '<a href="'.
htmlspecialchars($matches[1], ENT_QUOTES).
'" target="_blank">'.
htmlspecialchars($matches[2])."</a>";
else
return "INVALID MARKUP";
}, $text);
- Enthält Ihre version von PHP-Unterstützung Verschlüsse?
- B. ich nutze PHP 5.2, so denke ich nicht.
- Sie benötigen mindestens php 5.3: php.net/manual/en/functions.anonymous.php
Du musst angemeldet sein, um einen Kommentar abzugeben.
Passiert, wenn deine PHP-ist älter als 5.3. Anonyme Funktion-Unterstützung nicht verfügbar war, bis 5.3, also PHP wird nicht erkannt Signaturen von Funktionen als Parameter übergeben werden, wie die.
Müssen Sie eine Funktion erstellen, die auf traditionelle Weise, und übergeben Sie stattdessen seinen Namen (ich benutze
link_code()
zum Beispiel):Auch
array $matches
ist nicht ein problem, weil Typbestimmung für arrays unterstützt PHP 5.2.