Mysql
 sql >> Database >  >> RDS >> Mysql

Funzione PHP per sfuggire alla sintassi regexp di MySQL

Le espressioni regolari MySQL sono la variante POSIX "estesa" (ERE), disponibile in PHP come il deprecato ereg_ funzioni.

Sfortunatamente non c'è ereg_quote in PHP, tuttavia, i caratteri speciali di PCRE sono un superset dei caratteri speciali di ERE e l'escape della barra rovesciata a un carattere di punteggiatura non speciale non lo danneggia, quindi puoi farla franca usando preg_quote in sicurezza.

(Naturalmente avrai bisogno di query parametrizzate o mysql_real_escape_string dopo quella citazione, per evitare che le barre inverse vengano interpretate erroneamente come escape letterali di stringa non ANSI standard di MySQL.)