Float on the flow

とあるエンジニアのブログ。「ゆったり・しっかり」がモットー。

phpで数値文字参照

上記エントリで没になった仕組みをメモ。
意外にそのものズバリなサイトが見つからなかったので、後学のために。


HTMLでは、文字を直接書くかわりに「数値文字参照」とか「数値エンティティ」と
呼ばれる仕組みを使って文字を表示させることもできます。


たとえば、HTML内に

合奏

と書くと、画面上では

合奏

に見えます。


で、phpで普通の文字列からこれを生成する方法は次のようになります。

$original_string = "合奏";
$convmap = array(0x0080, 0xffff, 0, 0xffff);
$encoding = "UTF-8";

$encoded_string = mb_encode_numericentity($original_string, $convmap, $encoding);

$encodingは、元の文字列のエンコーディングにあわせてください。