ユーザーとの対話中、理論的にはフロントエンドの長いテキストでユーザーは絵文字を使用できますが、フロントエンドがバックエンドインターフェイスに絵文字を送信する場合、一部のエンコーディング制限によりこれを保存する方法がありません。データ。クラスデータ。
ここで使用する方法は、正規表現を使用してテキスト内の顔文字を変換し、それをデータベースから読み取って逆正規化を実行することです。
[絵文字が正常にエスケープされると、現在の絵文字が WeChat、ブラウザ、携帯電話で自動的に照合されることに注意してください]
以下にコードを貼り付けます
/** * 设置长文本内容 * * @param $content * @return mixed */ public function setContent($content){ return preg_replace_callback('/[\xf0-\xf7].{3}/', function($r) { return '@E' . base64_encode($r[0]);}, $content); } /** * 得到处理后的长文本内容 * * @param $content * @return mixed */ public function getContent($content){ return preg_replace_callback('/@E(.{6}==)/', function($r) {return base64_decode($r[1]);}, $content); }
この記事の正式アドレス: http://blog.it985.com/16082.html
この記事は IT985 ブログからのものです。転載する場合は、出典と対応を明記してください。リンク。