0

PHPでの文字列からintへの変換規則は何ですか?

たとえば、0を返す次のものがあります。

var_dump((int)"test0");
var_dump((int)"test1");
var_dump((int)"test2");

文字列が数字で始まる場合は、文字がトリミングされ、数字の部分のみが使用されるようです。次のように:

var_dump((int)"1test");
var_dump((int)"2test");
var_dump((int)"3test");

これらはそれぞれ1、2、3を返します。

さて、これは明確なルールですか、それとも例外がありますか?

4

1 に答える 1

5

これは、PHPのマニュアルで説明されています。

http://php.net/manual/en/language.types.string.php#language.types.string.conversion

抜粋:

値は、文字列の最初の部分で指定されます。文字列が有効な数値データで始まる場合、これが使用される値になります。それ以外の場合、値は0(ゼロ)になります。有効な数値データは、オプションの符号、1つ以上の数字(オプションで小数点を含む)、オプションの指数です。指数は、「e」または「E」の後に1つ以上の数字が続きます。

于 2013-01-12T00:02:03.080 に答える