|
|
|
PHP Mysql สอบถามการแปลงหน่วยของตัวเลขงบประมาณในรายงานค่ะ |
|
|
|
|
|
|
|
Code (PHP)
<?
$num=100000;
$str=number_format($num,0,'.',','); //แปลงค่าตัวเลขเป็นstr
$explode=explode(',',$str); // ตัดค่า , จะได้เป็น array
$count=count($explode); //นับจำนวน array ถ้าเป็นหลัก 100,000 จะได้ array 2 หลัก คือ 100 และ 000
if($count == 2){ //คำนวน count ถ้าในนั้น มี array 2 หลัก
echo $explode[0]."K";
}else if($count == 3){ //คำนวน count ถ้าในนั้น มี array 3 หลัก
echo $explode[0]."M";
}
?>
apply ดูครับ
|
|
|
|
|
Date :
2013-04-25 09:52:18 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณค่ะ
|
|
|
|
|
Date :
2013-04-25 10:13:18 |
By :
shushu |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$num = 7000000;
if($num/1000000>=1) echo ($num/1000000).'M';
else if($num/1000>=1) echo ($num/1000).'K';
?>
น่าจะสั้น ประหยัด และเข้าใจง่ายกว่านะครับ
|
|
|
|
|
Date :
2013-04-25 19:18:12 |
By :
itpcc |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าถาม query
ก็เอา คอลัมน์ที่จะดึงมา ไปหาร 1 ล้านได้เลยครับ
โดยแปลงให้เป็นทศนิยมกี่ตำแหน่งก็ว่าไป ด้วยการ CAST ให้เป็นชนิด DECIMAL
Code (SQL)
SELECT CAST(`budget` / 1000000 AS DECIMAL(10, 2)) AS `budget_m` FROM `table`
สังเกต DECIMAL(10, 2)
10 คือจำนวนหลักหน้าจุดทศนิยม
2 คือ จำนวนหลักทศนิยม
|
|
|
|
|
Date :
2013-04-25 19:28:37 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|