php 文字コードの問題

すべての文字を試していないが、基本はこんな感じ
/* テスト用の文字列 */
$str = “😀”;
# &# + 10進数に変換
$step1 = mb_convert_encoding($str, ‘HTML-ENTITIES’, ‘UTF-8’);
# ブラウザでもコードとしてもアルファベットになる。
echo $step1 . “…to html entities ブラウザ、コードの両方でアルファベットになる。\n”;
# 10進数 部分のみを取得
$step2 = preg_replace(“/&#/”, “”, $step1);
# 10進数を16進数に変換
$step3 = dechex($step2);
# &#x を先頭に追加して 16進数として表示
$step4 = “&#x” . $step3;
echo $step4 . “….絵文字として表示去れるが、code は アルファベット\n”;
どの環境でも文字化けが起きにくい、または起きても対処ができるかもしれない。