<?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]),4,"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,4),'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(260) "01160104010100320113011701050099010700320098011401110119011000320102011101200032010601170109011201150032011101180101011400320116010401010032010800970122012100320100011101030032022701290147022701290169022701300130022701290174022701290152022701290139022701300147"
string(65) "the quick brown fox jumps over the lazy dog こどものじかん"