stillat / php-package
基本PHP包的起点。允许配置PHPUnit和TravisCI
This package is auto-updated.
Last update: 2024-09-08 06:17:17 UTC
README
PHP Package是NewUp包生成器的模板。NewUp生成器是一个通用工具,用于从模板创建事物;PHP Package是一个模板,为你提供PHP项目的起点。
安装
首先,确保您已安装并配置了NewUp。之后,您可以运行以下命令:
newup template:install stillat/php-package
NewUp将安装和配置php-package
模板所需的所有内部内容。
一般用法
安装了php-package
模板后,我们就可以创建一个新的PHP包了。
newup a stillat/php-package vendor/package <output_directory>
在上面的示例中,将vendor/package
替换为您新包的供应商和包名(例如stillat/php-package
),并将<output_directory>
替换为您希望创建包的目录。
如果没有选项,PHP Package将创建类似以下的目录/文件结构
src/
.gitignore
composer.json
src/
目录是您创建新包/库的地方。它是空的,因此您有一个全新的起点。此目录将由Composer使用psr-0
自动加载器自动加载。
.gitignore
文件包含默认为您设置的许多选项,以及如何删除配置选项和查找更多信息的说明。
composer.json
文件是您的标准composer.json
文件。如果您已使用您的姓名和电子邮件地址配置了NewUp,作者字段已经为您填写。
指定PHP版本
您可以通过在生成包时提供额外参数来指定您的包所需的PHP版本
newup a stillat/php-package vendor/package <output_directory> <php_version>
默认情况下,PHP版本设置为>=5.5.9
。
例如,在创建我们的包时,我们可以轻松地声明我们的包至少需要PHP 5.6(请注意引号!)
newup a stillat/php-package vendor/package <output_directory> ">=5.6"
PSR-0 / PSR-4
您可以通过为--psr
选项提供值来选择要使用的自动加载器。以下表格列出了您可以使用的有效值
默认情况下选择PSR-4自动加载器。
当选择使用PSR-0自动加载器时,将自动为您创建目录结构。例如,如果包名为stillat/test
,则使用PSR-0自动加载器时将创建以下目录结构
<output_directory>/
│── src/
│ ├── Stillat/
│ │ ├────── Test/
├── composer.json
├── .gitignore
这与使用PSR-4自动加载器时的不同,因为src/
目录将是空的。
PHPUnit集成
要为生成的包启用PHPUnit支持,只需在命令末尾添加"--phpunit"开关即可
newup a stillat/php-package vendor/package <output_directory> --phpunit
将为您创建以下附加目录/文件
tests/
tests/ExampleTest.php
phpunit.xml
tests/
目录将是您的测试所在的地方。此目录中已包含示例测试(tests/ExampleTest.php
,可以安全删除)。
phpunit.xml
文件包含PHPUnit的配置。它已配置为具有合理的默认值,并具有自定义测试套件名称。
除了为您创建新的目录和文件外,选择PHPUnit集成还会自动更新您的composer.json
文件,包括mockery/mockery
和phpunit/phpunit
。
TravisCI集成
如果您想快速为项目配置TravisCI,只需将--travis
开关添加到命令末尾即可。
newup a stillat/php-package vendor/package <输出目录> --travis
您将看到交互式提示,引导您完成配置过程。一个示例会话可能如下所示
Would you like to add a PHP version to test? [Y/n] Y
Which PHP version would you like to test? 5.5.9
Do you want to allow failures for PHP version 5.5.9? [y/N] N
Would you like to add a PHP version to test? [Y/n] Y
Which PHP version would you like to test? 5.6
Do you want to allow failures for PHP version 5.6? [y/N] N
Would you like to add a PHP version to test? [Y/n] Y
Which PHP version would you like to test? 7.0
Do you want to allow failures for PHP version 7.0? [y/N] Y
Would you like to add a PHP version to test? [Y/n] Y
Which PHP version would you like to test? hhvm
Do you want to allow failures for PHP version hhvm? [y/N] N
Would you like to add a PHP version to test? [Y/n] N
这将生成类似于以下内容的.travis.yml
文件
language: php
php:
- 5.5.9
- 5.6
- 7.0
- hhvm
matrix:
allow_failures:
- php: 7.0
sudo: false
install: travis_retry composer install --no-interaction --prefer-source
TravisCI和PHPUnit
如果您指定了--travis
和--phpunit
标志,以下脚本将自动添加到您的.travis.yml
文件末尾
script: vendor/bin/phpunit
许可证
基于MIT许可证。享受吧!