2016-11-16 2 views
1

私は禅カートで何か作業をしていますが、価格で表示することは望ましくありません。 私はphpで数字が.00で終わるかどうか確認してください

$price=number_format($special_price,2,'.',''); 

を行うことによって、問題を修正したが、禅カートは数

$currencies->format($price) 

の前面または背面に必要な通貨記号を追加する機能を持っている問題は、この機能が追加されていることであると思いました.00値に戻って!

関数のコードは、私は$ currencies->形式2($価格を)持っていると

$format_string = $this->currencies[$currency_type]['symbol_left'] . number_format(zen_round($number * $rate, $this->currencies[$currency_type]['decimal_places']), $this->currencies[$currency_type]['0'], $this->currencies[$currency_type]['decimal_point'], $this->currencies[$currency_type]['thousands_point']) . $this->currencies[$currency_type]['symbol_right']; 

に変更するように、私はその機能を複製する場合、それが追加されます

$format_string = $this->currencies[$currency_type]['symbol_left'] . number_format(zen_round($number * $rate, $this->currencies[$currency_type]['decimal_places']), $this->currencies[$currency_type]['decimal_places'], $this->currencies[$currency_type]['decimal_point'], $this->currencies[$currency_type]['thousands_point']) . $this->currencies[$currency_type]['symbol_right']; 

です小数点以下の桁数を追加することなく通貨記号を使用します。もちろん、49.50などの価格では、これを50に丸めます。

私は試しました

$cur_price=$currencies->format($special_price); 
    $price=str_replace(".00", "", (string)number_format ($cur_price, 2, ".", "")); 

それは私が最初に通貨記号を適用し、その後、彼らは0.00だったが、それは価格があるべき空白が生じた場合には小数点以下を削除することができることであることの背後にある考え方。

私はどちらかは、私は条件付きで$ currencies->フォーマット()または$ currencies-を呼び出すことができます

$price 

は0.00で終わるかどうかを確認するための方法を見つける必要がある>形式2()、または私のようにする必要がありそれが.00であれば小数点を置かないように元の関数を修正し、それ以外のときは小数点以下を許してください。

答えて

4

$price = substr($price, -3) == ".00" ? substr($price, 0, -3) : $price; 

仕事?

+0

で終わるものに$curr_priceを変更した後、再びそれを実行し、以下のコードを実行してみてください、最初の2つの小数点以下の桁に番号を丸めることができますか? – atoms

+0

@タイラーセバスチャン、完璧に働いた。ありがとうございました。 –

1

PHPのexplode()関数を使用して価格を2つの部分(小数点の前後の部分)に分割し、それがあなたが望むものかどうかを確認することができます。

<?php 
$curr_price = '45.99'; 
$price_array = explode('.', $curr_price); 
if ($price_array[1] == '00') 
{ 
    $curr_price = $price_array[0]; 
} 
echo 'The price is ' . $curr_price . "<br>"; 
?> 
関連する問題