1

PHPで関数の引数を使用してintをプラスおよびマイナスにしてみてください。

私の機能は:

function int_test($arg) {
    $main = date('m');
    return intval($main.$arg);
}

だから私がテストするとき:

echo int_test(); // 11
echo int_test(-1); // 11
echo int_test(1); // 11

どうなりますか?またはどうすればよいですか?

4

2 に答える 2

2
function int_test($arg = 0) {
    $main = date('m');
    return intval($arg) + $main;
}
于 2012-11-27T13:50:51.130 に答える
1

.、日付()から返された数値文字列を、関数に渡す$main引数( )と連結するため、最終的には文字列「11-1」または「11+1」になります。$argint_test

return intval($main.$arg);

戻り値は、文字列「11 + 1」から最初の無効な文字(ここでは「+」または「-」)までの有効な数値データになり、11が残ります。

PHPマニュアルから:

文字列から数値への変換

文字列が数値コンテキストで評価される場合、結果の値とタイプは次のように決定されます。文字列に「。」、「e」、または「E」のいずれかの文字が含まれている場合、文字列は浮動小数点数として評価されます。それ以外の場合は、整数として評価されます。値は、文字列の最初の部分で指定されます。文字列が有効な数値データで始まる場合、これが使用される値になります。それ以外の場合、値は0(ゼロ)になります。有効な数値データは、オプションの符号、1つ以上の数字(オプションで小数点を含む)、オプションの指数です。指数は、「e」または「E」の後に1つ以上の数字が続きます。

于 2012-11-27T13:59:32.817 に答える