
【6日でできるPHP入門】型変換
PHPでは、変数に格納する値のデータ型(整数・文字列・小数・真偽値など)が自動的に決まりますが、時には「型を明示的に変換したい」「型を合わせて正しく比較したい」ことがあります。
このように値の型を意図的に切り替えることを「型変換(かたへんかん)」と呼びます。型変換は、数値と文字列を比較する際や、外部入力を安全に扱う際などに役立つ重要なテクニックです。

1.型変換の基本
1.1. 型変換とは?
型変換(キャスト)は、ある型の値を別の型に変換する処理です。PHPでは以下の方法で型変換が行えます。
変換先 | キャスト構文例 | 結果 |
---|---|---|
文字列 | (string)$x | $xを文字列型へ |
整数 | (int)$y または(integer)$y | $yを整数型へ |
浮動小数点 | (float)$z | $zを小数型へ |
論理値 | (bool)$flag | $flagを真偽値へ |
配列 | (array)$var | $varを配列型へ |
オブジェクト | (object)$val | $valをオブジェクトへ |
2.型変換の実践例
2.1. さまざまな型への変換
サンプル1:整数と文字列の型変換
ファイル名: lesson30_1.php
<?php
$num = 123; // 整数
$text = "456"; // 文字列
$str_num = (string)$num; // 整数→文字列
$int_text = (int)$text; // 文字列→整数
var_dump($str_num); // string(3) "123"
echo "<br>";
var_dump($int_text); // int(456)
?>
実行結果

サンプル2:小数や論理値への型変換
ファイル名: lesson30_2.php
<?php
$value = "7.89";
$float_val = (float)$value; // 文字列→小数
var_dump($float_val); // float(7.89)
$bool_val = (bool)$value; // 文字列→真偽値
var_dump($bool_val); // bool(true)
?>
実行結果

3.型変換の活用と注意点
3.1. 型を合わせて安全に比較
型が異なるまま比較をすると、予期せぬ結果になることがあります。
比較の前に型変換することで、意図通りの判定ができます。
例 | 解説 |
---|---|
(int)"5" === 5 | int型同士なのでtrue |
"5" == 5 | 型変換後に比較されtrue(==は自動型変換) |
"5" === 5 | 型が違うためfalse(===は型も比較) |
3.2. 型変換の自動と明示的な違い
PHPでは必要に応じて自動で型変換が行われますが、明示的な型変換(キャスト)を使うことで、より安全にプログラムを書けます。
4.そのほかの型変換例
サンプル3:配列やオブジェクトへの変換
ファイル名: lesson30_3.php
<?php
$data = 2024;
$arr = (array)$data; // 配列化
$obj = (object)$data; // オブジェクト化
var_dump($arr); // array(1) { [0]=> int(2024) }
echo "<br>";
var_dump($obj); // object(stdClass)#1 (1) { ["scalar"]=> int(2024) }
?>
実行結果

まとめ
- 型変換は値の型を切り替えるためのPHPの重要な機能
(型名)
のキャスト構文で、明示的に型を変換できる。- 比較やデータの整合性を保つために型変換を活用しよう。
- 型変換をうまく使えば、エラーの防止や安全なプログラム作成につながる。
いろいろな型変換を試しながら、型の扱いに強くなりましょう。