yosityo

消費税 四捨五入 について

0
お世話になっております。
消費税が8%になりもしかして自動計算できるのでは...。と今頃思い立ち調べておりました。

おかげさまで消費税の計算はできるようになったのですが、四捨五入の計算がうまくいかず消費税込みの金額が表示されるだけになってしまいます。
どこか見落としてしまっているのでしょうか。
ご教授いただければ幸いです。

<mt:setvarblock name="price"><mt: EntryData_kakezan></mt:setvarblock>

税抜価格:<$mt:var name="price" numify=","$> 円<br />

<mt:setvarblock name="price"><$mt:var
name="price" value="1.08" op="*"$></mt:setvarblock>

税込価格: <$mt:var name="price" numify=","$> 円<br />
<mt:setvarblock name="one_tenth"><$mt:var name="price" regex_replace="/^[0-9]*¥.(.).*$/","$1"$></mt:setvarblock>
<mt:setvarblock name="price"><$mt:var name="price" regex_replace="/¥..*/",""$></mt:setvarblock>


四捨五入:
<mt:if name="one_tenth" ne="$price">
<mt:if name="one_tenth" gt="4">
<$mt:var name="price" op="+" value="1" numify=","$>
<mt:else>
<$mt:var name="price" numify=","$>
</mt:else>
</mt:if>
<mt:else>
<$mt:var name="price" numify=","$>
</mt:else>
</mt:if>

返信(3)

| 返信する
  • >yosityoさん
    こんにちは。
    以下の記事をご覧ください。

    http://www.h-fj.com/blog/archives/2009/04/03-090356.php


  • >壱さん
    こんばんわ。
    早速試させていただきました。

    こちらの場合は
    <$mt:EntryData_kakezan replace=",","" setvar="sale"$>
    <mt:SetVar name="sale" value="1.08" op="*">
    <mt:GetVar name="sale" numify="1">

    で消費税が出力できました。
    四捨五入したい場合は
    その下に
    <mt:SetVar name="sale_r" value="$sale">
    <mt:SetVar name="sale_r" value="0.5" op="+">
    <mt:GetVar name="sale_r" regex_replace="/(\d*)\.(\d*)/","$1" setvar="sale_r">

    を記述してみるだけでは出力されないのでしょうか。
    どうも難しくてどう応用してよいのか悩んでおります。

  • 以下のテンプレートで出力できるはずです。

    <$mt:EntryData_kakezan setvar="price"$>
    <$mt:SetVar name="price" value="1.08" op="*"$>
    <$mt:SetVar name="price" value="0.5" op="+"$>
    <$mt:GetVar name="price" regex_replace="/(\d*)\.(\d*)/","$1" numify="1"$>
    

返信する


カテゴリグループ

OpenID対応しています OpenIDについて