LoginSignup
19
20

PHPローカル開発環境構築

Last updated at Posted at 2023-04-07

ローカル開発環境

これは、Mac上でPhpStormを使用したローカルPHP開発環境のセットアップ例です。できるだけ標準ツールのみを使用し、他に影響を与えないようにクリーンに整備することを重視しています。

ローカルで実行するので動作は高速です。開発中のアプリケーション切り替えを最小限にし、統合開発環境(IDE)でより快適で効率的なソフトウェア開発プロセスを体験する事を目指します。

  • 特定バージョンのPHPをインストール
  • XDebugのインストール
  • データベースインストール
  • PhpStorm
    • PHP
    • XDebugのオンデマンドモードの設定
    • DBブラウザ(DataGrip)
    • Git
  • ターミナルのプロファイル設定

PHP

以下のコマンドでshivammathur/phpをタップ、PHPバージョンを指定してインストールします。PHP5.6から最新版までがインストール可能です。

brew tap shivammathur/php
brew install shivammathur/php/php@8.1
brew install shivammathur/php/php@8.2

XDebug

peclでインストールします。PHP8.0以上か未満かでインストール方法が若干異なります。

PHP 8.0以上1

利用可能な最新バージョンがインストールされます。

$(brew --prefix)/opt/php@8.1/bin/pecl install xdebug

PHP 5.6 & PHP 7.x

XDebugのバージョン指定が必要です。2

$(brew --prefix)/opt/php@5.6/bin/pecl install xdebug-2.5.5
$(brew --prefix)/opt/php@7.0/bin/pecl install xdebug-2.7.2
$(brew --prefix)/opt/php@7.1/bin/pecl install xdebug-2.9.8
$(brew --prefix)/opt/php@7.2/bin/pecl install xdebug-3.1.6
$(brew --prefix)/opt/php@7.2/bin/pecl install xdebug-3.1.6
$(brew --prefix)/opt/php@7.3/bin/pecl install xdebug-3.1.6
$(brew --prefix)/opt/php@7.4/bin/pecl install xdebug-3.1.6

PECLパッケージ

その他PECLのパッケージのインストール例です。

pcov, apcu, redis, xhprof

$(brew --prefix)/opt/php@8.2/bin/pecl install pcov
$(brew --prefix)/opt/php@8.2/bin/pecl install apcu
$(brew --prefix)/opt/php@8.2/bin/pecl install redis
$(brew --prefix)/opt/php@8.2/bin/pecl install xhprof

memcached

brew install libmemcached

brew install pkg-config zlib
yes no | PHP_ZLIB_DIR=$(brew --prefix zlib) $(brew --prefix)/opt/php@8.2/bin/pecl install memcached

imagick

brew install imagemagick
yes no | $(brew --prefix)/opt/php@8.2/bin/pecl install imagick

PECLインストールトラブルシューティング

fatal error: 'pcre2.h' file not found
#include "pcre2.h"
         ^~~~~~~~~
1 error generated.

上記のようにpcre2.hなどの.hの拡張子のヘッダーファイルが存在しないというエラーが発生した場合は、以下のようにパスを伝えてインストールします。

C_INCLUDE_PATH=/opt/homebrew/include pecl install pcov

あるいは下記のようにシンボリックリンクを張ります。

ln -s /opt/homebrew/opt/pcre2/include/pcre2.h /opt/homebrew/opt/php@8.2/include/php/ext/pcre/pcre2.h

またmemcacheの利用にはbrew install libmemcachedでlibmemcachedのインストールが必要です。

DB

dbgine をインストール
https://dbngin.com/

データベースを作成します。
image.png

データベース用のターミナルをDBngineから開きます。
image.png

このようなexportコマンドと共に開きます。

export PATH=/Users/Shared/DBngin/mysql/5.7.23/bin:$PATH

前述のターミナルのPHPのexport分と組み合わせることができます。

export PATH="$(brew --prefix)/opt/php@8.1/bin/:PATH=/Users/Shared/DBngin/mysql/5.7.23/bin:$PATH"; php -v

接続を確認します。

mysql -uroot -h127.0.0.1 -P3306

PhpStorm設定

Xdebugをオンデマンドモードに

XdebugをXDebugを必要な時のみONにするオンデマンドモードの設定を行います。

まず、php.iniの場所を知るためにphp --iniコマンドを実行します。

php --ini

Configuration File (php.ini) Path: /opt/homebrew/etc/php/8.1
Loaded Configuration File:         /opt/homebrew/etc/php/8.1/php.ini
Scan for additional .ini files in: /opt/homebrew/etc/php/8.1/conf.d
Additional .ini files parsed:      /opt/homebrew/etc/php/8.1/conf.d/ext-opcache.ini

php.iniを編集して、xdebug.soの読み込みをコメントアウトしてXDebugを無効にします。これで普段はPHPはXDebugなしで実行されます。

;zend_extension="xdebug.so"

次にXDebugが必要なときに使用できるようにPhpStormでPHPバージョンの指定とXdebugの構成を行います。

image.png

image.png

PHP > Debug

image

Composerやコンソールで適宜XDebuOnにする時の使い方は必要な時のみXDebugをOnをご覧ください。

ターミナルのPHP

PhpStorm内で開いたターミナルはCLIインタープリターで設定したパスのPHPパスが通っています。確かめてみましょう。

 which php
/opt/homebrew/opt/php@8.1/bin/php

DataGrip

データベースブラウズにはPhpStormに統合されているDataGripを使います。3

表示 > ツールウインドウ > データベースで開きます。

  • MySQLの接続を参照してDBに接続します。
  • そのほかの使い方はデータベースツールおよびSQL を参照します。
  • 他のDBブラウザを使う場合でも、データソースの設定を済ませておくとSQLのコーディングでテーブル名やカラム名の補完が効いて便利です。

Gitクライント

表示 > ツールウインドウ > Gitで開きます。

Diffも使いやすく、1つのファイルでブロック単位にコミットする事もできます。詳しくはGitのマニュアルを参照してください。GitHubとも統合4されています。

PHPStorm補完ショートカットキー

PHPStormの「補完ショートカットキー」を使用可能するための設定をします。このショートカットキーは多用するのですが、Macの「言語変更ショートカットキー」とコンフリクトしていてどちらかの設定を変える必要があります。

  • Macのショートカットキーを変えるならシステム設定 > キーボード > キーボードショートカット > 入力ソース > 前の入力ソース^スペースを変更します。
  • PHPStormのショートカットキーを変えるならメインメニュー > コード > コード補完 > 基本の^Space`を変更します。

Mac標準ターミナル

(PHPStormのターミナルだけで完結する場合はこのセクションの設定は必要ありません)

ターミナル > 環境設定 > プロファイル で[+]をクリックして特定のPHP環境のパスを有効にするプロファイルを作成します。

シェルタブのコマンドを実行に以下の記述をします。

image.png

export PATH="$(brew --prefix)/opt/php@8.0/bin/:$PATH"; php -v

ウインドウタブでタイトルをPHP8.1などと変えます。

ターミナルの新規ウインドウでプロファイルから指定するPHPを選んで開きます。

設定完了、この次は?

  1. $(brew --prefix)でインテルとAppleシリコンのパスの違いを吸収しています。

  2. 最新番号はXDebugのSupported Versions and CompatibilityとPECLのPHP::xdebugで確認してください。

  3. PHPStormはWebStorm + DataGrip + PHPプラグインから構成されています。

  4. https://pleiades.io/help/idea/github.html

19
20
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
19
20