数値データを含む要素をたくさん含む大きな配列があります。
例:
3200
34300
1499
12899
これらを次のように変換したいと思います。
32.00
343.00
14.99
128.99
正規表現を使用せずにPHPでこれをエレガントに実現するにはどうすればよいですか?
前もって感謝します。
$new_array=array();
foreach($old_array as $value)
{
$new_array[]=number_format(($value/100),2);
}
千単位の区切り文字などをいじりたい場合は、number_formatを参照してください。配列値を適切に変更する場合は、foreachを参照してください。
または、無名関数とPHP 5.3が好きな場合:
$ nums = array(1、2、3、4); array_walk($ nums、function(&$ val、$ key){ $ val = number_format($ val / 100、2); }); print_r($ nums);
出力:
配列 (( [0] => 1.00 [1] => 2.00 [2] => 3.00 [3] => 4.00 )。
それでもなお、答えは同じです。を使用してnumber_format()
ください。
number_formatを使用します。
for($i=0;$i<count($array);$i++)
{
$array[$i] = number_format($array[$i]/100,2);
//if you need them as numbers
$array[$i] = (float) number_format($array[$i]/100,2);
}