Featured image of post Symfony Local Web Serverでxdebugを設定する

Symfony Local Web Serverでxdebugを設定する

Twitter ツイート Hatena Bookmark ブックマーク

久しぶりにSymfonyを触っていてい落ち着く僕です。
新しいプロジェクトでSymfonyを使おうと思ってsymfony/web-server-bundleをcomopserでinstallしたら、deprecatedとか出てて何事かと思ったらどうやら5.0でなくなるらしい・・。

代わりにSymfony Local Web Serverを使うということらしい。
個人的にはなんとなく symfony/cli に依存していく流れはキモチワルイなぁーとは思っています…

まあとりあえず流れがそうなってしまったので、Local Web Serverを使っていこうと思ったわけですが、xdebugはoffになっているし、timezoneがutcになっている・・・。

symfony cliの入れ方

一応書いておきます。

1
 curl -sS https://get.symfony.com/cli/installer | bash

https://symfony.com/download

php一覧を表示

1
$ symfony local:php:list

php.iniの設定

Symfonyのプロジェクト直下に php.ini を置くとそれがロードされるらしい。
なんでこんな感じにiniに書いてあげるとtimezoneが反映されている。

1
2
[Date]
date.timezone	= 'Asia/Tokyo'

xdebugの設定

ローカルのphpenvでxdebugはインストール済みとしています。
その場合でもLocal Web Serverを使うとxdebugは無効になっています。
で、それを解消するためにはプロジェクト直下に配置したphp.iniにxdebugの設定を記述すればいいだけです。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
[Date]
date.timezone	= 'Asia/Tokyo'

[xdebug]
zend_extension=xdebug
;zend_extension="/Users/polidog/.anyenv/envs/phpenv/versions/7.3.7/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so"
html_errors=on

xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_port=9000
xdebug.idekey = "phpstorm"
xdebug.remote_handler=dbgp

xdebug.max_nesting_level=3000

最後に

Symfony Local Web Serverは使用する前に一読しておくとよいかと思います。 英語が苦手な人もGoogle翻訳のちからを借りれば余裕で読めるかと思います。

個人的にはhttps://symfony.com/doc/current/setup/symfony_server.html#docker-integrationとか便利やねぇと思っています。

comments powered by Disqus
Built with Hugo
テーマ StackJimmy によって設計されています。