在PHPStrom中配置Docker开发环境

拉取 Docker 镜像

本文以 hyperf/hyperf:8.1-alpine-v3.16-swoole 镜像作为示例参考,实际可根据自身情况进行修改。

1
docker pull hyperf/hyperf:8.1-alpine-v3.16-swoole

PHP CLI Interpreter

File -> Settings

PHP -> CLI Interpreter

** + -> Form Docker… **

Docker -> 选择镜像 -> OK

Apply -> OK

配置成功后,PHPStrom 会自动生成路径映射,将项目目录映射到容器的/opt/project 目录,点击Apply进行应用。

PHP Composer

Composer Execution

新增 composer.json 文件

1
2
3
4
5
6
7
8
9
{
"name": "ydd/code-demo",
"require": {
"php": "^8.0"
},
"require-dev": {
"swoole/ide-helper": "^4.6.0"
}
}

使用 IDE 的 Compser 工具提供的命令进行安装

查看日志

Command Line Tool Support

IDE 的 Composer 工具只有几个常用命令,如果要执行一些特殊的命令,则无法满足。故此,需要再配置一个命令工具。

/usr/local/bin/composer为镜像中 composer 的工作目录,可根据自身镜像进行调整。

Ctrl + Shift + X,输入命令composer -V并回车执行

接着输入命令composer install,会发现执行失败,提示未找到 composer.json 文件。这是因为咱们现在的工作路径是/usr/local/bin/composer,而在容器中的项目目录是/opt/project

选择自定义

根据invoke处并配置 –working-dir=/opt/project

运行命令composer install,此时就执行成功了。

PHP CodeSniffer

安装squizlabs/php_codesniffer

1
composer require squizlabs/php_codesniffer --dev

填写路径

1
/opt/project/vendor/bin/phpcs
1
/opt/project/vendor/bin/phpcbf

点击** Validate**,出现 OK 则配置正确,点击 **Apply **进行应用。

查看效果

PHP CS Fixer

安装friendsofphp/php-cs-fixer

1
composer require friendsofphp/php-cs-fixer --dev


查看效果

自定义编码风格

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php

return (new PhpCsFixer\Config())
->setRiskyAllowed(true)
->setRules([
'@PSR2' => true,
'@PhpCsFixer' => true,
'list_syntax' => [
'syntax' => 'short', // 将 list() 转换为 []
],
])
->setFinder(
PhpCsFixer\Finder::create()
->exclude('public')
->exclude('runtime')
->exclude('vendor')
->in(__DIR__)
)
->setUsingCache(false);

查看效果