0
0

More than 3 years have passed since last update.

PHP8.0.6 / Xdebug3.0.4-8.0/ Eclipse の環境構築

Last updated at Posted at 2021-05-24

はじめに

PHP上級試験とは関係ないのだけど、
なんとか仕事もらってPHPの環境構築することになり、
昔やったことを思い出しながらやった結果、なんとかできたので備忘録としてメモ。

やること

「php eclipse 環境構築」で調べたらたいてい出てくるのと同じ。
0) Xamppをインストール
そもそもなぜEclipseにXamppあるのになぜ当時の自分はXamppを分けてインストールしたのか考えたのだけど、
どうやらEclipseじゃなくて、PHPStormをインストールする記事と読み間違えてたようです。

そこから環境変数PathにXamppを通しておいたりとかして、Eclipseで起動できるかどうかやっていた気がします。
本来は、1)からスタートすればよかっただけなのに。。。

1) Eclipseのインストール
https://mergedoc.osdn.jp/
私はEclipse2021>PHPのWindows64ビットをDL。
32ビットか64ビットかはWindowsのバージョンによっても異なるので確認してから
それぞれの環境に合うものをDLすればいいと思う。
2)XamppでApacheを起動させる(これは電源切るたびに毎回します)
 これインストールしたときはやっていても、続きやるときにApache切れてて使えなかったという
 ようなことがあります
3)Eclipse起動
 ここで、Workspaceは日本語名書いたらハマります
 デフォルトが日本語なので英語で作成しておくとよいかと。
4)よほどのことがない限りここまでは順調にいけると思います
 ここで、phpinfo()をやっておいて、コードをコピーしておきます。

5)次にXdebugのインストールへ。
ここで、4)でコピーしたコードを貼り付けます
 https://xdebug.org/wizard.php
6)出てきた指定のXdebug.dllをダウンロードします。

ここで、デバッグをしてみようと思ったら、
57%あたりで止まってしまったり、ブレークポイントで止まらなかったりというような現象が起き、
調べていたら、日が暮れて、その日は終了。

次の日(といっても月曜日)の午後改めて調べ直し。
エラーで調べるのをやめて、PHP8.0にXdebugインストールと言うところで調べると
やっとわかった。

Xdebugは2.0系と3.0系とでは書き方が異なるらしい。
http://www.y2sunlight.com/ground/doku.php?id=eclipse:xdebug3

というわけで、
[xdebug]
xdebug.mode=debug
xdebug.client_host="localhost"
xdebug.client_port=9000
xdebug.start_with_request=default
zend_extension=C:\usr\xampp7.3.25\php\ext\php_xdebug-3.0.1-7.3-vc15-x86_64.dll
のように書き直せばよかったらしい。

なお、portの部分は自分の環境のポート、extensionの部分は、Xdebagのdllを格納した場所に書き直すことに注意。
私の場合は、最初DLしたXamppの中にあったphp/ext/のところにdllがあったのでこれを格納場所にしています。
EclipseだけDLしたなら、その中にXamppがあるのでそこの格納場所を書けばいいと思います。

そして重要なこと。
上記のdllファイルを格納したら、格納場所にある、php_xdebug.dllは削除しておくこと(バックアップとして、デスクトップとかにコピーしといたらいいです)
こうして再びデバッグしたら、、、成功しました!

ということで環境構築終了!

今回ハマったのは

・環境変数(と、Xamppを最初にインストールしたことが間違い)
・Xdebug2.0系と3.0系とでは書き方が違う
・dllは1つだけにする

でした

今回は仕事用のWindowsだったけど、プライベートのmacも8.0にしてみよっと。

追記(2021.05.25)

・結局、xamppはEclipseの外で使うと、やりたいことについて色々弊害が出てきてしまうので、結局外のxamppとEclipseすべてを削除、DL、インストールし直した。
その時は30分程度で完了した。
このときは、どこでハマるかというのがわかっていて、上記の3.0のを直せばすぐできた。
やはり環境構築の場数を踏むというのはすごく大事。
ちなみにここで、環境変数を変えたりとかはしていない。やはり余計なことをすると、余計な作業も増えてしまうってわけか。。。
まあ、スキルアップしたと考えればそれもまたよし。

さらに追記(2021.05.26)

チュートリアルサイトの場合、大抵は新規作成から入るので、
ほぼxamppの中のhtdocsというフォルダにphpファイルが作られてその中だとデバッグなり、実行だったりもできる。

しかし、たとえば、GitHubなど他からクローンで持ってきたフォルダはC:¥直下においたりなどして、htdocsの中に入れていなかったりして、その中で実行しようとしても絶対に実行できない。
したがって、htdocsのフォルダの中に開発したいやつをクローンで持ってきたらいいことになる。
ここに気づかず、調べたりして右往左往してた。ガッデム。

でもここで疑問。
たとえばhtdocsじゃない他のフォルダに置きたい場合、設定はどうすればいいのだろうか?
今は時間がないので、ひとまず疑問を書いておく。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0