أضف نقطة عشرية 2 من chars من اليمين تحت PHP
سؤال
لدي مجموعة كبيرة تحتوي على الكثير من العناصر التي تحتوي على بيانات رقمية.
مثال:
3200
34300
1499
12899
أريد تحويلها إلى:
32.00
343.00
14.99
128.99
كيف يمكنني تحقيق ذلك بأناقة تحت PHP باستخدام No Regex؟
شكرا مقدما.
المحلول
$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);
انتاج:
Array ( [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);
}
لا تنتمي إلى StackOverflow