PHP の変数
1. PHP変数とは
変数(Variables)は、情報を格納するための「コンテナ(入れ物)」です。
変数には、$x や $y のような短い名前や、より内容が分かりやすい名前($age、$carname、$total_volume など)を付けることができます。
1.1 PHP変数の命名規則
- 変数は必ず
$記号から始まり、その後に変数名を記述します。 - 変数名は、文字またはアンダースコア(
_)で始まる必要があります。 - 変数名を数字から始めることはできません。
- 変数名に使用できるのは、英数字およびアンダースコア(A-z、0-9、および
_)のみです。 - 変数名はケースセンシティブ(Case-sensitive)です。例えば、
$ageと$AGEは2つの異なる変数として扱われます。
2. PHP変数の作成
PHPでは、$ 記号の後に変数名を続けることで変数を作成します。
2.1 使用例:変数の作成
<?php
$x = 5;
$y = "John";
?>上記の例では、変数 $x には数値の 5 が、変数 $y には文字列の "John" が格納されます。
注意: 変数にテキスト(文字列)を代入する場合は、値を引用符(クォーテーション)で囲んでください。
注意: 他のプログラミング言語とは異なり、PHPには変数を宣言するための専用コマンドはありません。変数は、値を代入した瞬間に作成されます。
3. 変数の出力
PHPの echo キーワードは、データを画面に出力するためによく使用されます。以下の例では、テキストと変数の値を組み合わせて出力する方法を示します。
3.1 文字列内での変数の展開
<?php
$txt = "Volardev.com";
echo "I love $txt!";
?>3.2 結合演算子(.)を使用した出力
以下の例も、上記の例と同じ結果を出力します。
<?php
$txt = "Volardev.com";
echo 'I love ' . $txt . '!';
?>3.3 数値の合計を出力する
<?php
$x = 5;
$y = 4;
echo $x + $y;
?>4. PHPは「動的型付け言語」である
上記の例で気づいたかもしれませんが、PHPでは変数にどのデータ型(Data type)であるかを明示的に伝える必要はありません。
PHPは、その値に応じて自動的にデータ型を関連付けます。これを動的型付け(Loosely Typed / Dynamic Typing)と呼びます。厳密な型定義が強制されていないため、整数に文字列を加算するような処理も、エラーを起こさずに行える場合があります(※状況によります)。
なお、PHP 7からは型宣言(Type declarations)が追加されました。これにより、ファンクション(Function)を宣言する際に期待するデータ型を指定したり、厳密モード(strict requirement)を有効にすることで、型が一致しない場合に「Fatal Error」をスローさせたりするオプションが利用可能になりました。
5. PHPの変数とデータ型
PHPでは、データ型は変数に代入された値によって決まります。
5.1 変数の代入と型
<?php
$x = 5; // $xは整数(integer)です
$y = "John"; // $yは文字列(string)です
echo $x;
echo $y;
?>PHPは以下のデータ型をサポートしています:
- string (文字列)
- int (整数)
- float (浮動小数点数)
- bool (論理値:true または false)
- array (配列)
- object (オブジェクト)
- null (空の変数)
- resource (外部リソースへの参照)
- mixed (任意の型)
6. var_dump() によるデータ型の確認
変数のデータ型と値を確認するには、var_dump() ファンクションを使用します。
6.1 var_dump() の実行例
<?php
var_dump(5);
var_dump("John");
var_dump(3.14);
var_dump(true);
var_dump([2, 3, 56]);
var_dump(NULL);
?>7. 複数の変数への同時代入
1行で複数の変数に同じ値を代入することができます。
7.1 使用例:一括代入
<?php
// 3つの変数すべてに "Fruit" という値が代入されます
$x = $y = $z = "Fruit";
?>