<?php echo "<br/>数值强制转换:"; $string="2a"; $string1=intval($string); echo '$string1的值:'.$string1.'$string2的值:';//单引号不会输出变量,将原样输出 $string2=(int)($string); echo $string2 ?>
マニュアルにそれが見つかりません。
これはマニュアルにも記載されています: 引用:
int intval (mixed $var [, int $base ] )
特定の基数変換を使用して変数 var の整数値を返します (デフォルトは 10 進数)。これだけの違いがある場合、小数の場合には (int) を使用するのが良いでしょうか。
違いはありません。一般的には (int) が使用されますが、float、string、array などもあります。
intval() は、パラメータが文字列の場合、文字列内の最初の文字の前にある数値文字列を返します。は数値ではありません 表される整数値。文字列の最初の文字が「-」の場合、2 番目の文字からカウントが開始されます。
パラメータがドット数値の場合、その四捨五入された値が返されます。
もちろん、intval()で返される値は4バイトの値で表現できる範囲内(-2147483648~2147483647)であり、この範囲を超える値は境界値に置き換えられます。
例: intval("A")=0; intval(12.3223)=12; intval("1123Asdfka3243");
int();
例:
$b=(int)$a;
$b=(int)$a; //$b=0;
$b=(int)$a;
$a=1.99;
$b=(int)$a; //$b=1;
PHP 文字列を int に変換する
場合によっては、変数の値を int 形式にすることが重要です。たとえば、訪問者がフォームに年齢フィールドを入力する場合、これは int である必要があります。ただし、$では
_POST 配列の場合は、文字列として取得します。
PHP 文字列を int に変換するのは簡単です。キャストする前に変数の型を使用する必要があるため、(INT) を使用する必要があります。これを行う方法の例を次に示します:
<?php $str = "10"; $num = (int)$str;?>
<?php $str = "10"; $num = (int)$str; if ($str === 10) echo "String"; if ($num === 10) echo "Integer"; ?>
「10」 - > 10
「10」 - > 10「10 テスト」 - > 10