【PHP】デバック・学習に便利な関数4選

アプリケーション開発ではプログラム中で使われる変数やデータの値を確認しながら開発をすることが多くあります。

値を確認することで、途中でコードの誤りに気付いたり、既存ソースコードの動きや仕組みを理解できます。

また、学習の際でも値を1つずつ確認しながら自分で動かしてみることで理解をより深めることができます。

ここではデバッグ・学習に便利な関数を4つご紹介します。

★ 目的

  • var_dump関数を使えるようになる。
  • print_r関数を使えるようになる。
  • gettype関数を使えるようになる。
  • get_class関数を使えるようになる。

var_dump関数

概要

var_dump関数は引数で渡した値(変数)の型や値、構造、詳細を出力します。

サンプルコード

ソースコード

<?php

$data = [
    'country' => 'japan',
    'fruits' => [
        'apple',
        'orange',
        'melon',
    ],
];

var_dump($data);

?>

実行結果

array(2) {
  ["country"]=>
  string(5) "japan"
  ["fruits"]=>
  array(3) {
    [0]=>
    string(5) "apple"
    [1]=>
    string(6) "orange"
    [2]=>
    string(5) "melon"
  }
}

print_r関数

概要

print_r関数は変数の値に関する情報を解り易い形式で表示します。

サンプルコード

ソースコード

<?php

$data = [
    'country' => 'japan',
    'fruits' => [
        'apple',
        'orange',
        'melon',
    ],
];

print_r($data);

?>

実行結果

Array
(
    [country] => japan
    [fruits] => Array
        (
            [0] => apple
            [1] => orange
            [2] => melon
        )

)

gettype関数

概要

gettype関数は引数で渡した値の型を文字列で返します。

出力するにはechoなどと合わせて使用します。

サンプルコード

ソースコード

<?php

$data = [
    'country' => 'japan',
    'fruits' => [
        'apple',
        'orange',
        'melon',
    ],
];

echo gettype($data);

?>

実行結果

array

get_class関数

概要

get_class関数は引数で渡した値のクラスを文字列で返します。

出力するにはechoなどと合わせて使用します。

サンプルコード

<?php

// クラス
class Person {

    // 名前
    public $name;
    
    // 身長
    public $height;

    // コンストラクタ
    public function __construct( $name, $height ) {
        $this->name = $name;
        $this->height = $height;
    }

    // プロフィールを出力する
    public function profile() {
        echo "私の名前は".$this->name."です。\n";
    }

}

$watanabe = new Person('Watanabe You', 157);

echo get_class($watanabe);

?>

実行結果

Person

まとめ

以上、デバック・学習に便利な関数4選でした。

プログラムが期待通りに動かなかったり、既存のコードを理解するにはご紹介した関数を使うと効果的です。

是非、試してみてください。