プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • PHP
  • 【PHP】デバッグ方法まとめ
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

【PHP】デバッグ方法まとめ

10.02

  • miyabisan2
  • コメントを書く

この記事は2分で読めます

画面に出力する手法

ブラウザに直接表示されますが一応古典的なデバッグ手法としては存在します。ただ、これらの手法だとブラウザに表示されてしまうので、画面レイアウトも崩れてしまうというデメリットもあります。

echo、print

文字列を出力する。ただ、配列には対応していないです。

print_r、var_dump

文字列だけでなく、配列も出力する。

preタグで見やすくする。

そのままvar_dumpを使っただけだと見づらいのでpreタグで囲うことで縦に並べて見やすくする事が可能です。

1
2
3
echo("<pre>");
var_dump($array); //array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
echo("</pre>");

デメリット

  • 多次元配列やインスタンスの出力を行うと見ずらい。
  • 削除忘れでそのまま公開してしまう可能性がある。

コンソール出力する方法

error_log

これもPHPの標準関数になりますが、echoやvar_dumpと異なり画面上に表示されません。コンソール上に出力されます。

1
2
3
error_log($aaa);
// 文字列の場合
error_log(print_r($b),true); // 配列の場合

ただし使う場合はphpの初期設定が必要になります。(なお、もし「php.ini」を編集できるようであればそこに設定する方法もあります。)

1
2
ini_set("log_errors","on");
ini_set("error_log","./php_error.log");

VSCodeのデバッグ

VSCodeの「PHP Debug」というプラグインを使えばできる。ただ、xdebugを導入する手順が少し面倒です。(Apacheの設定なども必要になる。)

事前準備:xdebug

ローカルのPHPでこのパッケージが入っていることが条件です。

PHPのデバッグを簡単にすることができるパッケージ。ただ、phpMyAdminというデータベースWebGUIソフトを使っている場合はこれを使っていると激重になってしまうのでその点は注意です。(WindowsであればHeidiSQL、Macであればsequelなどの代替ソフトなどを使用するようにしましょう。)

フレームワーク別

Laravel

通常ソース

dump

多次元配列なども見やすくして整形してくれます。

dd
Log::debug(変数など)

デフォルトでは「/storage/logs/laravel.log」に書き込まれます。設定によりどのログレベル以上のもののみ書き込みをおこなうか指定できます。なお、事前に「use llluminate\Support\Facades\log;」という宣言が必要になります。

bladeファイル

@dump

dumpのblade版

@dd

ddのblade版

スポンサーリンク
  • 2023 10.02
  • miyabisan2
  • コメントを書く
  • PHP
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2020 05.04

    【PHP】フォームのセキュリティ対策

  2. 2020 05.05

    【PHP】「変数」、「定数」、「配列」、「連想配列」、「条件分岐」、「論理演算子」、「ファイル操作」

  3. 2020 05.04

    【PHP】外部のPHPファイルを使うには

  4. 2020 05.05

    【PHP】データベース接続(PDO)について

  5. 2020 05.04

    【PHP】「関数」(文字列操作関数など)、クラス

  6. 2020 04.04

    【PHP】「リリースノート」、「php.ini」、「composer」、「セッション」、「クッキー」など

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【FuelPHP】概要

【VSCode】devContainer

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー