【php】var_dumpで変数に関する情報を見る方法

php
書いてる人
あいりゅー

プログラミングを学びながら更新しています。
iPhone/iPad/Mac/Apple WatchなどのApple製品はこちらで主に更新しています。
麻雀の反省をひたすら掲載してるブログもやってます。

あいりゅーをフォローする

このページについて

このページではphpで使えるvar_dump関数の機能と使い方の解説をしています。

var_dump

var_dumpは変数に関する情報をダンプすることができる関数です。ダンプとは「デバッグや修復のためにプリンターやファイルに出力すること」など書かれています。つまりvar_dumpを簡単にいうと「変数に関する情報を見れる関数」ということになります。そのままですね。

var_dumpは変数であれば色々と受け付けることができます。基本的な書き方は

var_dump(A,B);

AとBがありますが、基本的には変数は1つでもOKです。そしてB以降は追加で確認したい変数ということで、追加していくことができます。戻り値はありません。画面に表示して終了です。

実際に変数を見る

var_dumpを使用して実際に変数を見るにはこのように書きます。

$a = 1;
var_dump($a); //int(1)
$b = 'a';
var_dump($b); //string(1) 'a'
$c = true;
var_dump($c); //bool(true)
$d = 1.2;
var_dump($d); //float(1.2)

この場合、変数のデータ型とその中の要素が出力されます。変数として正しく設定されているものならOKなので、ブール値や小数点を含むfloatなどもわかります。

配列や計算式に対して使うとこうなります。

$z = [1,2];
var_dump($z); //array(2){[0]=>int(1)[1]=>int(2)}
$y = ['a'=>1,'b'=>2];
var_dump($y); //array(2){['a']=>int(1)['b']=>int(2)}
$x = 1+2;
var_dump($x); //int(3)
$k = [$z,$y];
var_dump($k);
//array(2){[0]=>array(2){[0]=>int(1)[1]int(2)}
[1]=>array(2){['a']=>int(1)['b']=>int(2)}}

配列に対して使うとその配列の中身を添字とともに出してくれます。連想配列でも同じことで、キー=>値のように出力します。計算式を代入した変数の場合、計算結果をもとに出力するだけです。

複数の変数を使った配列に対して使用した場合でも、それぞれの変数を調べてキーや値を返してくれます。

複数の変数を調べる場合

1回のvar_dumpで複数の変数を調べる場合は、,(カンマ)で区切るだけです。

$a=1;
$b=2;
var_dump($a,$b); //int(1)int(2)

関数の受付

関数の結果を受け付ける場合、関数側での書き方で注意する点があります。それはreturnで戻り値を正しく設定することです。以下が超簡単なサンプルです。

function test() {
return 100;
}
var_dump(test()); //int(100)

testという関数を呼び出すと、すぐにreturnで100を返します。それをvar_dumpで受け取って中身を出力って感じです。これは変数に設定してreturnしなくてもOKみたいです。

htmlタグとの併用

これはwebサイトでphpを使いたいって方限定ではあるんですが、preタグと組み合わせることで見やすくなります。通常のvar_dumpの出力は1行で配列の中身などを表示しています。こんな感じです。

var_dumpの配列出力

これをpreタグで囲むことで見やすくします。

preタグで囲むと見やすくなる

print_rとの違い

変数の情報を確認する関数としてはprint_rなどもあります。var_dumpとprint_rの主な違いは以下の通りです。

特徴var_dumpprint_r
引数の種類変数のみ変数とブール値
引数の数複数1つ
return不可可能
データ型の表示ありなし

主な特徴と違いとしてはこんな感じになります。このページではvar_dumpのことしか解説していませんが、気になった方はprint_rの解説ページも参考にしてみてください。

まとめ

var_dumpは変数の情報を見ることができる関数です。配列の中身の構造を確認したり、変数のデータ型なんかを調べたりできます。類似関数のprint_rとは違った使い方になるのでそこは注意しましょう。

phpの基礎
phpとは?JavaScriptとの違いは?みたいなことから、基本の書き方などを解説。
echoとprint
画面に文字を出力する2種類の言語構造の使い方
変数
phpで使える変数の扱い方などを解説しています。
変数のスコープ(有効範囲)
変数のスコープについての解説です。
var_dump
変数の情報を見ることができる関数
print_r
変数の情報をわかりやすい形式で表示する関数
配列と連想配列
配列と連想配列の書き方と、便利な関数の解説など。
key
連想配列のキーを返してくれます。内部ポインタ関係あり。
count
配列や連想配列の要素数を数えてくれる関数の使い方解説。
ソート関数
配列に対してソートを行う関数の中から、代表的な5つの使い方解説です。
array_reverse
配列の中身の順番を反転させる関数です。
array_chunk
配列を指定した数で分割させるarray_chunk関数の使い方解説です。
array_combine
2つの配列を足して1つの連想配列にする関数です。
array_diff
2つの配列を比較して、存在しない値を出力する関数
array_push
配列に対して後方に要素を追加する関数
array_unshift
配列に対して先頭に要素を追加する関数。
array_shift
配列の先頭の要素を取り出す関数。
array_merge
複数の配列を統合して1次元の配列にする関数
array_intersect
2つの配列を比較して、両方に共通するものを出力する関数
include
includeを使って別のphpファイルを読み込む方法の解説。
if文
if文を使って処理を変更させる方法の解説。
switch文
switch文を使って複数の処理分岐を行わせたい時に使います。
forループ
forループを使って同じ処理を行わせる方法の解説です。
whileループ
whileループを使って同じ処理を行わせる方法の解説と注意点。
do-whileループ
do-whileループを使って同じ処理を行わせる方法の解説です。
foreachループ
foreachループを使って配列内のアイテム全てに処理を行う方法の解説です。
continue
ループ処理の残りをスキップしつつ、ループの先頭に戻る制御構造
ループのネスト構造(入れ子)
ループの中にループを入れる書き方や考え方の解説。
function
functionを使って自作の関数を作成・使用する方法の解説。
引数の種類と書き方解説
functionで扱う引数の種類と書き方を解説
return
returnの使い方と関数での使い方解説。
class
classを作成して変数と関数を1つにまとめる方法と使い方の解説。
constructとdestruct
classのインスタンス作成と同時に処理を行うconstructと、スクリプトの終了と同時に実行するdestructの解説です。
インターフェイス
インターフェイスという用語の解説と、実際の使い方解説
トレイト
コードを再利用するのに便利なトレイトの解説です。
列挙型
プログラム中で使う変数名をあらかじめ定義しておく。そんな感じの型。
PDOを使ってMySQLへ接続
PDOを使ってMySQLへ接続し、データを取得する方法の解説です。
データの加工と表示
PDOでデータベースから取得したデータを加工して表示する方法の解説です。
HTMLフォームのデータ受け取りと表示
HTMLで作ったフォームからのデータの受け取り方法と、その表示方法の解説です。
タイトルとURLをコピーしました