文字列を2文字ずつ、3文字ずつと高速に分割する方法を紹介します。
//これを
今日もPHPが楽しいでございます。
//こうしたい
今日 もP HP が楽 しい でご ざい ます 。
このやり方を解説します。
サンプルコード
$mojiretu = "分割したい文字列";
$bunkatu = preg_split("//u", $mojiretu, -1, PREG_SPLIT_NO_EMPTY);
$mojisuu = count($bunkatu);
for($i=0; $i < $mojisuu;){
echo $bunkatu[$i].$bunkatu[$i+1]." ";
$i = $i + 2;
}
まずは文字列を1文字ずつに分割します。
マルチバイト文字列でも、「preg_split」を使えばここは簡単。
次に配列の総数をカウントします。
その総数を上限にforで繰り返し処理。
最後は余りが出てしまいますが、空が出力されるので特に問題なし。
ここが気になる人はifなどで処理ください。