2016-04-12 15 views
-1

Ich habe derzeit ein Formular, mit dem Benutzer Kommentare in MySQL-Datenbank einfügen können.Filtern von Emojis in Eingabe

Gibt es eine Methode Filter Emoji Eintrag in PHP, bevor die Zeichenfolge in MySQL eingefügt wird?

Kann ich preg_replace() verwenden oder gibt es eine bessere Funktion?

Diese emoji:


wird nach Einfügen in MySQL dazu umgewandelt:

🎠

Beispiel:

Input:

This is a present

Ausgang: This is a present


HTML Form:

<input name="remarks" type="text" placeholder="Optional"/> 

PHP-Code:

$remarks = $_POST['remarks']; 

$remarks = preg_replace('/\xEE[\x80-\xBF][\x80-\xBF]|\xEF[\x81-\x83][\x80-\xBF]/', '', $remarks); 

(Dieses Muster funktioniert nicht)

+0

Wie wäre es mit der Antwort? Kannst du mir antworten? – Andreas

+0

@Andreas Ich werde es später versuchen, vergaß diese Frage;) – Panda

Antwort

1

Nicht sicher, ob das was du willst, aber ich werde es versuchen.

preg_match_all("/(\W)+/", "This is a present ", $output_array); 

Ausgang:

preg_match_all("/(\w)+/", "This is a present ", $output_array); 

Ausgang:

array(2 
     0 => array(4 
      0 => This 
      1 => is 
      2 => a 
      3 => present 
    ) 

Also im Grunde Worte und nicht Worte in zwei verschiedenen Regex.

+0

@luweiqi Irgendwelche Kommentare dazu? – Andreas