stillat/php-package

基本PHP包的起点。允许配置PHPUnit和TravisCI

1.1.1 2015-11-28 23:33 UTC

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/mockeryphpunit/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许可证。享受吧!