PHP preg_match mit funktionierender Regex [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Validiere das Datumsformat in PHP 7 Antworten
function validateDate( $date )
{ 
    echo $date;
    //2012-08-24 20:30:00
    if(preg_match('/^([0-9]{4})-([0-9]{2})-([0-9]{2}) ([1-2]{1})([0-9]{1}):([0-5]{1})([0-9]{1}):([0-5]{1})([0-9]{1})$/', $date) >= 1)
    {
        return true;
    }
    else
    {
        return false;
    }
}

Dies gibt immer false zurück. Ich habe ein einziges Tool zum Erstellen des regulären Ausdrucks verwendet, und es hat dort einwandfrei funktioniert. Das Problem begann, als ich das "/" zum regulären Ausdruck hinzufügte. Irgendwie scheint PHP dies zu erfordern, aber ich weiß nicht warum und ich weiß nicht warum es meine Regex bricht.

Es sollte TRUE für etw. Zurückgeben. wie "2012-08-24 20:30:00" und FALSE für "asdf2012-08-24 20: 30: 00asdf" oder irgendetwas, das nicht meiner Regex entspricht

Danke im Voraus!

----------------------- BEARBEITEN Vielen Dank für alle Ihre Antworten!

Wie einige Benutzer betonten, gibt meine Funktion für das Beispieldatum "2012-08-24 20:30:00" true zurück. Dies funktioniert jedoch nur, wenn ich $ date = '2012-08-24 20:30:00' manuell einstelle. Wenn ich die Funktion an anderer Stelle in meinem Code mit genau der gleichen Zeichenfolge aufrufe, wird false zurückgegeben. Weiß jemand warum?

----------------------- EDIT2

Ja, es tut mir leid, dass Sie Ihre Zeit verschwendet haben. Tatsächlich wurde der Zeichenfolge ein Leerzeichen hinzugefügt. Wenn Sie trim () an meinem Datum verwenden, bevor Sie meine Funktion aufrufen, erhalten Sie jetzt das richtige Ergebnis.

Vielen Dank an alle!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage