まず最初に、多くの問題の解決に貢献してくれたこの CSDN プラットフォームに感謝します。
価格の形式に問題があります。アドバイスをお願いします。ありがとうございます。
たとえば、100000 は 100,000 として自動的にフォーマットされます
56000 は自動的に 56,000 としてフォーマットされます
6000 は 6000 として表示されます
まだ解決できない問題もありますが、はい、 CSDN プラットフォームにも感謝します。本当にありがとう!
直接表示されない場合は5桁の整数を万で割った場合は自分でメソッドを書いてください
header("Content-type: text/html; charset=utf-8");function removeAfterZero($str) { $s = $str; $r = ''; for ($i = strlen($s)-1; $i > 0; $i--) { if ($s[$i] == 0) { $s = substr($s, 0, $i); $r = $s; } else { break; } } return $r;}$num = 1000100;if (strlen(strlen($num) < 5)) echo $num;else if (strlen($num) >= 5 && strlen($num) < 6) { if (removeAfterZero(substr($num, 1, strlen($num)-1)) == 0) echo substr($num, 0, 1) . "万"; else echo substr($num, 0, 1) . '.' . removeAfterZero(substr($num, 1, strlen($num)-1)) . "万";}else if (strlen($num) >= 6 && strlen($num) < 7) { if (removeAfterZero(substr($num, 2, strlen($num)-2)) == 0) echo substr($num, 0, 2) . "万"; else echo substr($num, 0, 2) . '.' . removeAfterZero(substr($num, 2, strlen($num)-2)) . "万";}else if (strlen($num) >= 7 && strlen($num) < 8) { if (removeAfterZero(substr($num, 3, strlen($num)-3)) == 0) echo substr($num, 0, 3) . "万"; else echo substr($num, 0, 3) . '.' . removeAfterZero(substr($num, 3, strlen($num)-3)) . "万";}
$num = 100000;echo $num < 10000 ? $num : $num/10000 . '万';
$num = 100000;echo $num < 10000 ? $num : sprintf("%0.1f",$num/10000) . '万';
$num = 100000;echo $num < 10000 ? $num : $num/10000 . '万';
rrリー
に基づいて4L
$num = 110000001;echo price_format($num);function price_format($num){ $p=rtrim(number_format($num < 1e4 ? $num :$num<1e8? $num/1e4 : $num/1e8,2 ),'0'); return $num < 1e4 ? $num :$num<1e8? ($p . '万'): ($p . '亿');}