首頁 > 後端開發 > php教程 > 一文解析PHP元轉分的錯誤示範(附程式碼實例)

一文解析PHP元轉分的錯誤示範(附程式碼實例)

藏色散人
發布: 2023-04-11 10:24:02
轉載
3601 人瀏覽過

這篇文章為大家帶來了關於php的相關知識,其中主要介紹了透過PHP進行金額(元轉分)的互相轉化出現的錯誤,有興趣的朋友下面一起來看一下吧,希望對大家有幫助。

一文解析PHP元轉分的錯誤示範(附程式碼實例)

php 元轉分的錯誤示範

說明

一旦進行金額的互相轉化,就非常容易發生錯誤。所以寫個文章記錄下來。

錯誤主要的原因是內部是浮點數變數。

有興趣的同學可以試試。

錯誤的示範。

$price=20.08;
echo yuan_to_fen($price);

function yuan_to_fen($price)
{
  return intval(100 * $price);
}

function yuan_to_fen2($price)
{
  return floor(100 * $price);
}
function yuan_to_fen3($price)
{
  return (int)(100 * $price);
}
登入後複製

正確的示範

$price=20.08;
echo yuan_to_fen($price);

function yuan_to_fen($price)
{
  return round(100 * $price);
}
登入後複製

總結

<?php
$a = 20.08;
$b = yuan_to_fen1($a);
$c = yuan_to_fen2($a);
$d = yuan_to_fen3($a);
$e = yuan_to_fen4($a);

$x = yuan_to_fen31($a);
$y = yuan_to_fen32($a);
$z = yuan_to_fen33($a);

echo(&#39;价格=&#39; . $b . "\n");//2007
echo(&#39;价格2=&#39; . $c . "\n");//2007
echo(&#39;价格3=&#39; . $d . "\n");//2007
echo(&#39;价格4=&#39; . $e . "\n");//2008

echo(&#39;方法31=&#39; . $x . "\n");//2008
echo(&#39;方法32=&#39; . $y . "\n");//2008
echo(&#39;方法33=&#39; . $z . "\n");//2008

function yuan_to_fen1($price)
{
  return intval(100 * $price);
}

function yuan_to_fen2($price)
{
  return floor(100 * $price);
}

function yuan_to_fen3($price)
{
  return (int)(100 * $price);
}

function yuan_to_fen4($price)
{
  return 100 * $price;
}

function yuan_to_fen31($price)
{
  return intval(strval(100 * $price));
}

function yuan_to_fen32($price)
{
  //返回浮点数。
  return round(100 * $price);
}

function yuan_to_fen33($price)
{
  //返回整型,比较推荐这种。
  return intval(round(100 * $price));
}
登入後複製

推薦學習:《PHP影片教學

以上是一文解析PHP元轉分的錯誤示範(附程式碼實例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:learnku.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板