<?php
$ah = prepare_ansicode();
mb_internal_encoding('UTF-8');
$str = "<p>\xc2\xa0</p><p>我是測試字串</p>";
$str2 = str_replace("\xC2\xA0", '', $str);
$str3 = preg_replace("/\xC2\xA0/i", '', $str);
?>
<div style="background-color: black; color: gray;">
<?php
manifest($str);
manifest($str2);
manifest($str3);
?>
</div>
<?php
function manifest($str) {
$nl = '<br />';
global $ah;
echo "{$ah[33]}$str{$ah[0]}\n";
$k = 0;
for ($i = 0; $i < mb_strlen($str); ++$i) {
$mbc = mb_substr($str, $i, 1);
$mbcbytes = manifest_mb($mbc);
$k += count($mbcbytes);
$mbcexp = implode(' ', $mbcbytes);
echo "{$ah[32]}$mbc{$ah[0]} ($mbcexp) ";
if ($k > 7) {
echo $nl;
$k = 0;
}
}
echo $nl . $nl;
}
function manifest_mb($mbc) {
$ret = Array();;
for ($i = 0; $i < strlen($mbc); ++$i) {
$ret[] = sprintf('%x', ord($mbc[$i]));
}
return $ret;
}
function prepare_ansicode() {
$colors = Array( 'black', 'red', 'green', 'yellow', 'blue', 'purple', 'cyan', 'white' );
$ah = Array();
for ($i = 30; $i <= 37; ++$i) {
$ah[$i] = "<span style='color: {$colors[$i-30]};'>";
}
$ah[0] = '</span>';
return $ah;
}Add a code snippet to your website: www.paste.org