【PHP】console.logを使ってデバッグログを出力する方法

・PHPでJavaScriptのconsole.logを使ってデバッグログを出力したい。
・PHPでconsole.logは使える?
・var_dumpやprint_rでデバッグログを出力する方法は?

JavaScriptではconsole.logを使ってデバッグログを出力しますが、PHPでconsole.logを使えるのかどうか知りたい人も多いでしょう。

そこでこの記事では、PHPでJavaScriptのconsole.logを使ってデバッグログを出力する方法やvar_dump、print_rなどの使い方を解説します!

この記事を読めば、PHPでconsole.logを使う方法を理解し、デバッグログを出力できるようになるでしょう。

PHPでconsole.logを使ってデバッグログを出力したい、var_dumpやprint_rでデバッグログを出力する方法も知りたい人は、ぜひ最後までご覧ください。

PHPでconsole.logを使ってデバッグログを出力する方法

JavaScriptでは、デバッグログの出力方法としてconsole.logがよく使われますね。

console.logを使うと、Chromeのデベロッパーツールの「Console」でログが出力されるので、非常に便利です。

では、このconsole.logをPHPのようなサーバー側で使うことはできないか、と考える人もいるでしょう。

実は、JavaScriptのconsole.logはPHPでも使うことができます。

なので、ここではPHPでconsole.logを使ってデバッグログを出力する方法について解説していきます。

さっそく、コードを見ていきましょう。

まず、全体のコードとしては上記の通り。

関数の引数に出力したいデータを渡し、それをechoを使ってスクリプトタグに入れています。

少しコードを分けて、詳しく解説していきます。

まず、関数「console_log」を作成し、引数の名前を「$data」としておきます。

関数の中は、echoを使ってスクリプトタグを出力し、その中にconsole.logを指定します。

この方法を使えば、PHPでもconsole.logを使ってデバッグログを出力することができるというわけです。

console.logの中身は、引数に渡されるデータを出力したいのですが、データをJSON形式にするために、「json_encode()」を指定します。

このjson_encodeを指定しなかった場合、データをうまく出力できなくなります。

json_eoncodeは値をJSON形式に変換してくれる関数です。

MEMO
JSONとは、「JavaScript Object Notation」の略で、JavaScriptのオブジェクト記法を用いたデータ交換フォーマットです。
様々な言語をJSONで挟むことで、各プログラミング言語間のデータの受け渡しが簡単にできるようになります。

なので、今回はconsole.logに「json_encode($data)」というように指定しましょう。

あとは、console.logでデバッグログを出力したいデータを関数の引数に指定します。

※ここでは、「りんご、バナナ、みかん」という値が入った配列「$array」を引数に指定しています。

結果を表示すると、次のようになるでしょう。

ChromeのデベロッパーツールでConsoleを確認すると、配列のデータが出力されていますね。

この結果から、PHPでもconsole.logを使ってデバッグログを出力できることがわかりました。

※console.logのデバッグについて、さらに詳しく知りたい人は以下の記事をご覧ください。

コンソールを使ってjavascriptのデバッグをする方法 【初心者向け】

PHPでデバッグログを出力する方法

PHPでは、JavaScriptのconsole.logを使ってデバッグログを出力することができます。

ですが、PHPはvar_dumpprint_rなどを使って、デバッグログを出力することも可能です。

なので、ここではvar_dumpやprint_rなどの使い方を解説していきます。

var_dumpを使う

var_dump関数は、引数として渡された変数の中身を詳しく表示するための関数です。

PHPでコードを書いているときに、コードの処理が正しいのかどうか検証するために使うことができます。

例えば、次のようなコードの場合。

「りんご、バナナ、みかん」という値が入った配列があります。

これを変数の「$array」に代入して、var_dump関数の引数に指定しましょう。

結果を表示すると、配列「$array」の中身が詳しく出力されます。

上記のように、配列の中身が詳しく表示されましたね。

この[0][1][2]というのはインデックス番号で、配列の値に0から順に番号付けされます。

そして、stringというのはデータ型の文字列を表しており、もし配列の値が数値の場合はintになります。

このように、var_dump関数を利用すれば、引数として渡された変数の中身を詳しく表示してくれます。

なので、PHPのコードを書いているときに、その処理が本当に正しいのかどうか検証することができます。

エラーの原因を見つける手段にもなるので、便利な関数です。

print_rを使う

PHPでは、デバッグログを出力するためにvar_dump関数の他に、print_r関数を使うこともできます。

print_r関数もvar_dump関数と同じように、引数として渡された変数の中身を詳しく表示するための関数です。

コードで使い方を見ていきましょう。

先ほどと同じように、「りんご、バナナ、みかん」という値が入った配列を変数「$array」に代入します。

そして、print_r関数の引数に「$array」を指定しましょう。

結果を出力して、確認してみます。

配列の中身が上記のように詳しく表示されていますね。

ですが、var_dump関数のときと比べて表示の仕方が少し異なります。

var_dump関数では、stringなどのデータ型が表示されていましたが、print_r関数では、データ型が表示されていません。

このように、var_dumpとprint_rはデバッグログを出力するための関数ですが、出力の仕方が微妙に異なるのがわかります。

どちらを使うのが正しいか正しくないかは、特に決まりはありません。

ただ、配列の値のデータ型まで細かく確認したい場合はvar_dump関数、配列のキーや値だけを確認したい場合はprint_r、というように使い分けるといいでしょう。

【初心者向け】PHPのエラーを確認する方法!

まとめ

今回は、PHPでJavaScriptのconsole.logを使ってデバッグログを出力する方法について解説しました。

PHPでconsole.logを使うには、echoでスクリプトタグを出力するのが簡単な方法です。

関数を使って引数に出力したいデータを渡し、console.logで出力すれば、PHPでもデバッグログを出力することが可能になります。

また、PHPではvar_dumpやprint_rなどを使ってデバッグログを出力することもできるので、そちらも使ってみるといいでしょう。

この記事がPHPの学習に役立つと幸いです。

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?