n桁の数値の中から指定した桁の数値を取り出したい事ってあるよね?
そんな時どうするのか調べたんだけど、関数としては文字列の切り抜きに使うsubstrしかなかった(と思う)。
わずかながらの速度を気にするなら、10の何乗がうんたらとか式書く方がいいんだろうけど、面倒だし以下で十分事足りると思う。
<?php $num = 123456789; $get = substr($num,4,2); echo $get; ?>
説明
上記を実行すると 56 という数値が返ってくる。
どういう処理が行なわれているかというと、
「123456789」という数値の中から、「左から4桁進んだところの数字」を、「右側から2桁を抜き出している」だけ♪
注意が必要なのが、左から4桁目進んだところの数字は4ではなく5になっている事!
1桁ずつ配列に格納
上記説明を気を付けつつ、右から1桁ずつ配列に代入していくコードを書くと、以下のようになる。
// 桁数を求める $keta = strlen($num); for($i=0; $i<$keta; $i++){ // 右側から1桁ずつ配列に格納していく $d_su[$i] = substr($num,($keta-$m-1),1); }
コメント