ホームページ >バックエンド開発 >PHPの問題 >PHPは文字列をint型に変換します

PHPは文字列をint型に変換します

藏色散人
藏色散人オリジナル
2020-08-08 09:42:276556ブラウズ

文字列を int 型に変換する

php メソッド: 1. 変換する変数の前に括弧で囲んだターゲットの型を追加します; 2. PHP の組み込み関数 intval を使用して変数を変換します; 3. sprintf の「%d」を使用して、指定された変数をフォーマットします。

PHPは文字列をint型に変換します

推奨: 「PHP ビデオ チュートリアル

PHP では、文字列を変換する 3 つの方法を使用できます。整数。

1. 強制型変換方法

強制型変換方法は、「変換対象の変数の前に括弧で囲んだ対象の型を追加する」というものです(本書「型のコツ」より抜粋) PHPマニュアル)その方法。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = (int)$foo; // $bar 是整型 
?>

整数の場合、キャスト型名は int または integer です。

2. 組み込み関数メソッド

組み込み関数メソッドは、PHP の組み込み関数 intval を使用して変数を変換します。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = intval($foo); // $bar 是整型 
?>

intval 関数の形式は次のとおりです:

int intval(mixed $var [, int $base]); (摘自PHP手册)

PHP マニュアルには、配列とオブジェクトの変換には intval() を使用できないと明確に記載されています。しかし、テストした結果、配列を変換する際に問題は発生せず、変換された値は予想どおり 0 ではなく 1 になりました。 PHP 内では、配列型変数もゼロ以外の値を持つとみなされるためだと思います。オブジェクトを変換するとき、PHP は次の通知を出します:

Object of class xxxx could not be converted to int in xxxxx.php on line xx

変換値も 1 です。

3. 書式文字列メソッド

書式設定された文字列メソッドは、sprintf の %d を使用して、指定された変数を書式設定し、型変換の目的を達成します。

<?php 
$foo = "1"; // $foo 是字符串类型 
$bar = sprintf("%d", $foo); // $bar 是字符串类型 
?>

厳密に言えば、sprintf の変換結果は依然として文字列型であるため、文字列を整数に変換する方法とみなされるべきではありません。しかし、彼の処理後の文字列値は確かに「強制的に文字列型に変換された整数」になっています。

以上がPHPは文字列をint型に変換しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。