🐘

【PHP】 変数の情報を表示する var_dump 関数

2020/10/17に公開

PHP には「変数の情報」を表示する var_dump 関数があります。
「変数の情報」とは主に下記のことです。

  • 変数に代入されている値
  • 変数に代入されている値の型

PHP マニュアルの説明を見てみましょう。

var_dump

変数に関する情報をダンプする

引用元:PHP: var_dump - Manual

dump (ダンプ)とは英語では「放出する」「投げ捨てる」などの意味を持ちますが、この場合は「出力する」「表示する」の意味で捉えると理解しやすいです。
変数のことを英語で variable (ヴァリアブル)と言います。
変数の情報を表示する関数なので、var_dump という関数名になっています。
関数名が英語なので var_dump という名前を見ただけでは、何をする関数なのかわからないと思いますが、それぞれの意味を調べることで何をする関数なのか推測することができます。
自分で変数や関数を命名するときの参考にもなりますので、変数名や関数名にどのような意味があるのか意識するようにしましょう。

var_dump は関数なので、引数に表示したい変数名を記述します。

var_dump 関数の記述
var_dump(変数名)

実際に var_dump 関数を使ってみましょう。

サンプルコード
<?php

$var = 'おはよう';
var_dump($var);
表示結果
string(12) "おはよう"

実行結果:3v4l

var 変数には おはよう という文字列型 string が代入されています。
var_dump した表示結果にも string と表示されています。
変数に代入されている値は文字列型ということがわかります。
() 内の 12 というのは文字列の長さです。
文字列の長さと言っても文字数ではなく、バイト数で表しています。
日本語はマルチバイト文字と呼ばれ、1 文字 1 バイトではありません。
おはよう の場合は 1 文字を 3 バイトで表しているため、全部で 12 バイトになります。
そのため、12 と表示されています。
文字列型の場合は、var_dump すると () 内にバイト数が表示されます。
文字列型以外の場合はバイト数は表示されません。
バイトという単位についての詳細はここでは割愛しますので、気になる方は調べてみてください。

先ほど、var_dump 関数を使って 1 つの変数の情報を表示しました。
複数の変数を表示したい場合は、カンマ区切りでまとめて記述することができます。

まとめて記述する方法
var_dump(変数名,変数名,変数名,変数名)

次は、文字列型以外の値も var_dump してみましょう。

サンプルコード
<?php

$var1 = 123;
$var2 = '123';
$var3 = true;
$var4 = ['りんご','バナナ','メロン'];

var_dump($var1,$var2,$var3,$var4);
表示結果
int(123)
string(3) "123"
bool(true)
array(3) {
 [0]=>
 string(9) "りんご"
 [1]=>
 string(9) "バナナ"
 [2]=>
 string(9) "メロン"
}

実行結果:3v4l

$var1 には 123 という整数型が代入されています。
$var2 の場合は、123 をシングルクォーテーションで囲ってますので、整数型ではなく文字列型です。
$var2 には 123 という文字列型が代入されています。
$var3 には true という論理値が代入されています。
$var4 には 配列が代入されています。
表示結果を見てわかる通り、var_dump 関数を使うことで変数に代入された値と型を確認することができます。
PHP のコードを書いたり、読んだりしているときに変数にどのような値・型が代入されているのか確かめたいときに、var_dump 関数を使って確認することができます。

感想

Zenn を試してみたかったので、簡単な記事を投稿しました。
Markdown に対応しており、コードを含むような記事は note よりも断然書きやすいです。
個人的にコードブロックの左上にファイル名や説明を記述できる(半角スペースがあっても大丈夫)のが最高です。

Discussion