2016-04-12 13 views
-1

私は現在、ユーザがMySQLデータベースにコメントを挿入できるフォームを持っています。入力での絵文字のフィルタリング

文字列がMySQLに挿入される前に、フィルター絵文字入力がPHPに存在しますか?

preg_replace()を使用することはできますか?使用する方が良い機能はありますか?

この絵文字:


は、MySQLに挿入した後、これに変換されます。

🎠

例:

入力:This is a present

出力:This is a present


HTMLフォーム:

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

PHPコード:

$remarks = $_POST['remarks']; 

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

(このパターンは動作しません)

+0

回答はどうですか?あなたは私に返事をくれますか? – Andreas

+0

@アンドレアス後で試してみます、この質問は忘れました;) – Panda

答えて

1

これがあなたが望むものかどうかはわかりませんが、私は試してみます。

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

出力:

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

出力:

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

だから、基本的に2つの異なる正規表現内の単語と非単語を一致させます。

+0

@luweiqiこれに関するコメント? – Andreas

関連する問題