skillup

技術ブログ

PHP

PHPでのログ出力 PHP monolog

投稿日:

PHPでデバッグするときは、画面上にvar_dumpで情報を見ていたのですが、これができない場面ではログへの出力を行うことになります。

いままではフレームワークに標準でついてたんですが、これを機に一般のPHPのログ出力について勉強。

既存のPHPのログ出力に関していうと下記リンクが詳しいです。

https://unoh.github.io/2007/05/10/php-logging-to-text-files.html

上記のリンクに上がっている方法が一番歴史があるとおもうのですが、2016年5月現在,PHP monologというライブラリが使えるという情報を聞いたので早速調査つかってみました。

インストール

composerでインストールできます。composer.jsonに下記のように記述してcomopser  installでOKです。

プログラム

一応上記のプログラムでなんとかデバッグができるようになりました。

と書けば、配列でもオブジェクトでも内容を出力することはできるのですが(逆に言うとこれを書かないと出力されないです。)、ここに直に配列やオブジェクトを渡しても改行されていないため、非常に見にくいです。

そこでvar_dumpの結果自体を文字列として引き渡せばいいということに気づき、

というメソッドを実装しています。

参考リンク

http://blog.jicoman.info/2014/05/monolog/

http://kzhishu.hatenablog.jp/entry/2015/10/04/200000

https://hidelafoglia.wordpress.com/2008/07/02/php-var_dump-%E3%81%AE%E5%86%85%E5%AE%B9%E3%82%92%E6%96%87%E5%AD%97%E5%88%97%E3%81%A7%E5%8F%97%E3%81%91%E5%8F%96%E3%82%8B/

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPにおけるstaticキャッシュ

PHPにおけるstaticキャッシュに関して。 PHPのおけるキャッシュはいくつかありまして、一般的にはmemcachedなどのKVS方式のキャッシュサーバーなどを使う方法が一般的かと思います。 キャ …

no image

composer経由でのpearライブラリのインストール

2018年7月現在、PHPのライブラリはほとんどComposer経由でインストールできるかと思いますが、稀にComposerに対応していないものもあり、その場合、pearから取得してくる必要があります …

no image

dateTimeの使い方

phpの日付ライブラリであるdateTimeについて。 Contents1 過去のリンク2 頻出表現3 リンク 過去のリンク CakePHP3 日付ライブラリ(Time)について http://ski …

no image

PHPの開発事情 (PHPBrew/ビルトインサーバー/Xdebug/PHPUnit/Composer)

私自身、プログラミングは好きなんですがあまり現代の流行の技術に興味がありません(汗) IT業界はドッグイヤーならぬ、マウスイヤーとも呼ばれているようで、常に最新技術の動向には目を光らせていく必要があり …

no image

composerでのライブラリ登録

今回はPHPのパッケージ管理ツールであるcomposerへのライブラリ登録を。 Contents1 ライブラリの作成2 packagistへの登録3 呼び出す側3.1 composer.json3.2 …