dump()やdd()をグローバルに使えるようにする

1 min read

zenn.dev 覗かせて頂いております。すごく良くできていますね...試しにkitar@Qiitaからひとつ転記してみます。

Twitterで見かけたこの記事のアイデアが手軽でとても便利だったのでご紹介です。

LaravelやSymfonyを使っている方はdumpddを使う機会が結構あると思います。しかしフレームワークの外でやろうとするとちょっと面倒です。ddを使いたいだけのためにsymfony/var-dumperをrequireすることもしばしば。しかしそれも今日で最後。PHPにビルトインされているauto_prepend_fileオプションでプリロードしてしまえば良いのです。

手順

  • 適当なところにディレクトリを作る (dotfiles/の下とか)
  • その中でcomposer require symfony/var-dumper
  • prepend.phpなど適当なファイルを作る
<?php
require_once 'vendor/autoload.php';
  • php.iniの以下の箇所にパスを追加
; Automatically add files before PHP document.
; http://php.net/auto-prepend-file
auto_prepend_file = /absolute/path/to/your/prepend.php
  • 以上!いつでもどこでもdump ddできるよ!

なお、元記事の著者はAlgoliaの中の人のようですが、この方法を1年以上使っていて特に問題は起こっていないとのこと。("function already defined"とか)

Discussion

ログインするとコメントできます