<?php
function encode($to_encode){
$i=0;
$len=strlen($to_encode);
$ret='';
for($i=0;$i<$len;++$i){
$ret.=str_pad(ord($to_encode[$i]),3,"0",STR_PAD_LEFT);//4 should be enough for UTF-8, right?
}
return $ret;
}
function decode($numberstr){
$numberstr=(string)$numberstr;
$ret='';
$i=0;
$ii=0;
$len=strlen($numberstr);
$shit='';
$len2=null;
for($i=0;$i<$len;$i+=4){
$shit=ltrim(substr($numberstr,$i,3),'0');
$ret.=chr($shit);
}
return $ret;
}
$str="the quick brown fox jumps over the lazy dog こどものじかん";
var_dump($str,encode($str),decode(encode($str)));
string(65) "the quick brown fox jumps over the lazy dog こどものじかん"
string(195) "116104101032113117105099107032098114111119110032102111120032106117109112115032111118101114032116104101032108097122121032100111103032227129147227129169227130130227129174227129152227129139227130147"
string(49) "t)gq��k@+o�foj��sAoe��h
�a�gdo/�#ҁ�ɂ��#ށ�ɓ"