ホームページ >バックエンド開発 >PHPの問題 >PHPで値をbool型に変換する方法

PHPで値をbool型に変換する方法

PHPz
PHPzオリジナル
2023-03-21 17:17:341774ブラウズ

PHP は型なし言語であり、実行中に変数の型を自由に変更できます。基本的なデータ型の 1 つはブール型です。ブール型には true と false の 2 つの値しかありません。

場合によっては、bool 型変数を他のデータ型に変換したり、他のデータ型を bool 型に変換したりする必要があります。 PHP では、これらの変換はキャストまたは組み込み関数を使用することによって実現できます。

#1. 他のデータ型を bool 型に変換する

PHP では、次のルールを使用して他のデータ型を bool 型に変換できます:

    変数が整数または浮動小数点型で、値が 0 または 0.0 の場合は false に変換され、それ以外の場合は true に変換されます。
  • 変数が文字列型で、値が空の文字列 ("") の場合は false に変換され、それ以外の場合は true に変換されます。
  • 変数が配列型でメンバーがない場合、つまり空の配列の場合は false に変換され、それ以外の場合は true に変換されます。
  • 変数がオブジェクト型の場合、true に変換されます。
  • 変数の型が NULL の場合、false に変換されます。
次は PHP コードの例です:

$var1 = 0;
$var2 = 1.23;
$var3 = " ";
$var4 = "string";
$var5 = array();
$var6 = new stdClass();
$var7 = NULL;

var_dump((bool)$var1); // false
var_dump((bool)$var2); // true
var_dump((bool)$var3); // false
var_dump((bool)$var4); // true
var_dump((bool)$var5); // false
var_dump((bool)$var6); // true
var_dump((bool)$var7); // false

2. bool 型を他のデータ型に変換します

PHP では、次のルールは bool 型を他のデータ型に変換します:

    true を整数型 1 に変換し、false を整数型 0 に変換します。
  • true を文字列型 "1" に変換し、false を空の文字列 "" に変換します。
  • true を浮動小数点型 1.0 に変換し、false を浮動小数点型 0.0 に変換します。
以下はサンプル PHP コードです:

$bool1 = true;
$bool2 = false;

echo (int)$bool1; // 1
echo (int)$bool2; // 0

echo (string)$bool1; // "1"
echo (string)$bool2; // ""

echo (float)$bool1; // 1.0
echo (float)$bool2; // 0.0
キャストに加えて、型変換に組み込み関数を使用することもできます。

3. 型変換には組み込み関数を使用します

    intval() 関数
intval() 関数は型変換が可能です文字列 整数値に変換します。文字列が数値で始まる場合は直接整数に変換され、それ以外の場合は 0 が返されます。

$str = "123.45abc";

echo intval($str); // 123
    floatval() 関数
floatval() 関数は、文字列を浮動小数点値に変換できます。

$str = "123.45abc";

echo floatval($str); // 123.45
    strval() 関数
strval() 関数は、値を文字列型に変換できます。

$val = 12345;

echo strval($val); // "12345"
    settype() 関数
settype() 関数は、変数を指定された型に変換できます。この関数の最初のパラメータは変換される変数、2 番目のパラメータは変換される型です。

$str = "123.45abc";

settype($str, "float");

echo $str; // 123.45
要約すると、PHP でデータ型変換を実装するのは非常に簡単です。 PHP の型変換技術に精通すると、コードの読みやすさと表現力が向上します。

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

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