0

だから私は2つの変数を持っていますvar1, var2.

$var1 = "53,000,000" //- integer
$var2 = 10 //- string

最終的には両方を比較したいので、

$var1 = (int)str_replace(",","",$var1); // => 53000000 - integer

これが私の問題です..私がそうするなら:

if($var1 > $var2)  
    $var2 = $var1

私は$var2 = 0....なぜですか?
.. PHP 5.2.14 で実行

編集str_replace の代わりに substr_replace を誤って入力しました。更新しました。

4

4 に答える 4

1

いくつかのセミコロンを追加する必要がありましたが、コードは次のとおりです。

$var1 = "53,000,000"; //- integer
$var2 = 10; //- string
//In the end I want to compare both, so I

$var1 = (int)str_replace(",","",$var1); // => 53000000 - integer
//Here's my issue .. if I do:

if($var1 > $var2)  
    $var2 = $var1;

var_dump($var1, $var2);

そして、ここに私の出力があります:

int(53000000) int(53000000)

私は 5.2.6 を使用しましたが、問題にはなりません。表示しているものの間に他のコードはありますか?

于 2010-11-19T14:09:06.073 に答える
0

型キャストの必要はありません。str_replace を実行するだけです

ここにコードがあります

$var1 = "53,000,000" ;    
$var2 = 10;  
$var1=str_replace(',','',$var1);  
if($var1 > $var2)    
    $var2 = $var1;

    echo $var2;
于 2010-11-19T12:45:48.700 に答える
0

substr_replace に間違ったパラメーターを指定したため、$var1 は 0 に評価されます。str_replace を使用したかったのでしょう。

于 2010-11-19T12:40:04.987 に答える
0

str_replace()の代わりに使用しsubstr_replace()ます。

于 2010-11-19T12:34:56.917 に答える