dhii/php-project

PHP 开发初学者工具,简化项目创建

安装: 8

依赖: 0

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 0

开放问题: 0

语言:Dockerfile

v0.1.3 2024-04-27 00:34 UTC

This package is auto-updated.

Last update: 2024-08-27 01:49:00 UTC


README

Continuous Integration

PHP 开发初学者工具,简化项目创建

详细信息

将此项目用作您的 PHP 库的起点!

功能

  • Docker - 使用 Docker 开发和测试您的插件。使用针对您的插件定制的环境。在浏览器中立即查看更改。构建包含完整的 WordPress 安装和您的插件及其所有预置要求的 Docker 镜像。

  • PHPStorm - 为当今最好的 PHP IDE 之一提供集成配置,包括

    • Composer - 在 IDE 内部安装和管理 PHP 依赖项,无需离开 IDE。
    • PHPUnit - 在 PHPStorm 中直接运行测试并获得报告。
    • xDebug - 在 PHPStorm 中设置断点并检查您的代码。
    • 代码覆盖率 - 在友好的 GUI 中查看尚未测试的内容。
  • 静态代码分析 - 保持一致的编码风格,并在早期捕获问题。

    • Psalm - 检查您的代码中的问题。
    • PHPCS - 检查您的代码风格。 PHPCBF 可以自动修复其中的一些。
  • 持续集成 - 使用 GitHub Actions 自动验证所有贡献是否符合项目标准。

    • Composer vendor 缓存。 快速安装。

使用说明

入门指南

使用 Composer 引导您的项目。

  1. 克隆并安装依赖项

    composer create-project dhii/php-project my_project

    在这里,my_project 是项目文件夹的名称。

  2. 自定义项目

    注意:以下星号 * 表示更改此值需要重新构建镜像以对开发环境产生影响。

    • .env.example 复制到 .env

    • .env:

      • BASE_PATH - 如果您正在使用 Docker Machine,即在任何非 Linux 系统上,请将此设置为项目文件夹的绝对路径 在机器内部。如果您是在 Linux 上,则无需更改此设置。
      • PROJECT_NAME - 您项目的缩写。主要用于命名容器,例如使用 container_name。这对于在同一台机器上运行多个项目非常有用。
      • PHP_BUILD_VERSION - 插件将 构建 的 PHP 版本。这应该与您插件的最低 PHP 要求相对应。用于确定 php 镜像的标签。
      • PHP_TEST_VERSION* - 插件将 运行 的 PHP 版本。这应该与您插件的最高 PHP 要求相对应。用于确定 php 镜像的标签。
    • composer.json:

      • name - 您的包名称。
      • description - 您的包描述。
      • authors - 您和/或您公司的详细信息。
      • require - 您项目的包和平台要求。如果您有不同的最低要求,则可能需要更改 PHP 版本。不要忘记在 .env 中更新 PHP_BUILD_VERSION
      • require-dev - 您项目的开发要求。用于测试和代码质量的工具。

更新依赖项

Composer 已安装到 build 服务镜像中。要运行 composer 命令,请使用 docker-compose run。例如,要更新依赖,您可以运行以下命令:

docker-compose run --rm build composer update

如果您使用 PHPStorm,可以使用 composer 集成,因为项目已经为此进行了配置。

代码测试

此引导程序包括 PHPUnit。它已经配置好,您可以通过运行示例测试来验证它是否正常工作。

docker-compose run --rm test vendor/bin/phpunit

如果您使用 PHPStorm,可以使用其 PHPUnit 集成:在 tests 目录中的任何测试或文件夹上右键单击,然后选择“运行”。这将与上面的命令做同样的事情。因为 test 服务用于测试,所以测试将使用其 PHP 版本运行,这应该与您的项目最低要求相匹配,但如果您想要在具有不同规格的系统上进行测试,也可以是其他版本。

调试

引导程序在 Docker 环境的 test 服务和 PHPStorm 配置中包含 xDebug。要使用它,请右键单击 tests 目录中的任何测试或文件夹,并选择“调试”。这将启用 xDebug 运行测试。如果您收到关于 xdebug.remote_host 设置不正确并建议修复错误的错误,请通过在弹出的窗口中将该变量设置为您的机器在本地网络中的 IP 地址 来修复错误。之后,任何可通过 PHPUnit 测试访问的代码(包括测试代码本身)的断点将导致执行暂停,从而允许检查代码。

静态分析

  • Psalms

    在项目根目录中运行 Psalm

    docker-compose run --rm test vendor/bin/psalm
    • 也将在 CI 中自动运行。
    • PHPStorm 集成配置包括。
  • PHPCS

    在项目根目录中运行 PHPCS/PHPCBF

    docker-compose run --rm test vendor/bin/phpcs -s --report-source --runtime-set ignore_warnings_on_exit 1
    docker-compose run --rm test vendor/bin/phpcbf
    • 默认情况下,使用 PSR-12 和来自 Slevomat Coding Standard 的一些规则。
    • 也将在 CI 中自动运行。
    • PHPStorm 集成配置包括。