-1

こんにちは
、フロート値から先頭のゼロを削除しようとしていますが、できません。として変換する必要
がある数値があります。以前は先頭のゼロを削除していましたが、変数を使用すると文字列に変更され、数値として使用できなくなりました。 を使用して再び浮動小数点値に変換しようとすると、または値に先行ゼロが追加されますが、 それは単純な問題であることがわかっていますが、解決できません。助けてください.. これがコードです。値を返す関数があり、それを変数で使用しました。 これが私の機能です012.3612.36ltrimltrim
(float)floatval012.36


public function getCartPercentShippingRate(){
        $shippingRateCollection = $this->getShippingMethodForShippingCountry();
        $shippingRate = 0;
        foreach ($shippingRateCollection as $shipping){
            $shippingRate = $shipping->getShippingRate();
        }
        $quote=Mage::getSingleton('checkout/session')->getQuote();
        $totals = $quote->getSubtotal();
        $shippingPercent = $totals * $shippingRate/100;
        return $shippingPercent;
    }
$price = $shippingRateModel->getCartPercentShippingRate();

それを使用して変数をエコーすると、echo $priceが表示されます012.36

私が使用するecho $price = (float)($price);と、まだ表示されます012.36
私はこれを試しました。として$newprice = ltrim($price, '0');表示されます。しかし、別の関数でこのように価格を設定するために使用すると、新しい価格として 0 が表示されます。Is のような静的な値を使用すると、新しい価格が 12.36 と表示されます。$newprice12.36$method->setPrice($newprice);
$method->setPrice(12.36);

4

3 に答える 3

7

これを試してみてください...最初に値を文字列に変換してこれを行います。

$str = ltrim($str, '0');

$val = 012.36;
$val = ltrim($val, '0');
echo (float) $val;
于 2013-10-31T05:07:23.600 に答える
0

どのように試したのかわかりません。次のコードは私に何が欲しいかを教えてくれます

$num = 012.36;
echo (float)$num; // outputs 12.36
于 2013-10-31T04:42:24.687 に答える
0
use (float) 

ここにデモがあります

デモ

于 2013-10-31T04:48:45.870 に答える