ralfeggert/zftool

官方ZFTool实用模块的分支,用于Zend Framework 2应用程序。

维护者

详细信息

github.com/RalfEggert/ZFTool

源代码

安装: 60

依赖: 0

建议者: 0

安全: 0

星级: 3

关注者: 3

分支: 102

dev-master 2013-12-31 06:02 UTC

README

这是一个官方ZFTool模块的分支。

有关任何计划的功能,请参阅待办事项

ZFTool是一个用于维护模块化Zend Framework 2应用程序的实用模块。它从命令行运行,可以作为ZF2模块或PHAR安装(见下文)。

特性

  • 安装ZF2库
  • 列出
    • 应用程序中的模块
    • 模块中的控制器
    • 控制器中的操作
  • 创建
    • 一个新的项目(安装ZF2骨架应用程序)
    • 一个新的模块
    • 一个新的控制器(可选添加配置和工厂)
    • 控制器中的新操作
    • 新的视图助手(可选添加配置和工厂)
    • 模块的基本路由
  • 生成类映射并更改Module.php以使用它
  • 应用程序诊断

要求

  • Zend Framework 2.0.0或更高版本。
  • PHP 5.3.3或更高版本。
  • 对正在维护的应用程序的命令行访问(shell,命令提示符)

使用Composer安装

  1. 打开控制台(命令提示符)
  2. 转到您的应用程序目录。
  3. 运行composer require zendframework/zftool:dev-master
  4. 执行以下报告的vendor/bin/zf.php

使用PHAR文件(zftool.phar)

  1. packages.zendframework.com下载zftool.phar
  2. 使用以下选项之一执行zftool.phar(将zftool.phar替换为zf.php

您还可以使用以下报告的bin/create-phar命令生成zftool.phar

用法

基本信息

显示当前Zend Framework 2版本

zf.php version [<path>]
zf.php --version [<path>]

[<path>]            (Optional) path to a ZF2 application

显示ZF2应用程序中的所有模块

zf.php modules [<path>]

[<path>]            (Optional) path to a ZF2 application

显示模块中的所有控制器

zf.php controllers <module_name> [<path>]

<module_name>       Name of module
[<path>]            (Optional) path to a ZF2 application

显示模块中控制器中的所有操作

zf.php actions <module_name> <controller_name> [<path>]

<module_name>       Name of module
<controller_name>   Name of controller
[<path>]            (Optional) path to a ZF2 application

诊断

zf.php diag [<test_group_name>] [options]

[<test_group_name>] (Optional) name of module to test
--verbose | -v      Display detailed information.
--break   | -b      Stop testing on first failure.
--quiet   | -q      Do not display any output unless an error occurs.
--debug   | -d      Display raw debug info from tests.

创建

项目创建

zf.php create project <path>

<path>              Path of the project to be created

模块创建

zf.php create module <module_name> [<path>] [options]

<module_name>       Name of module to be created
[<path>]            (Optional) path to a ZF2 application
--ignore  | -i      Ignore coding conventions
--apidocs | -a      Prevent the api doc block generation

控制器创建

zf.php create controller <controller_name> <module_name> [<path>] [options]

<controller_name>   Name of controller to be created
<module_name>       Module in which controller should be created
[<path>]            (Optional) path to a ZF2 application
--factory | -f      Create a factory for the controller
--ignore  | -i      Ignore coding conventions
--config  | -c      Prevent that module configuration is updated
--apidocs | -a      Prevent the api doc block generation

操作创建

zf.php create action <action_name> <controller_name> <module_name> [<path>] [options]

<action_name>       Name of action to be created
<controller_name>   Name of controller in which action should be created
<module_name>       Module containing the controller
[<path>]            (Optional) path to a ZF2 application
--ignore  | -i      Ignore coding conventions
--apidocs | -a      Prevent the api doc block generation

路由创建

zf.php create routing <module_name> [<path>] [options]

<module_name>       Name of module to create the routing for
[<path>]            (Optional) path to a ZF2 application
--single  | -s      Create single standard route for the module

视图助手创建

zf.php create view-helper <helper_name> <module_name> [<path>] [options]

<helper_name>       Name of view helper to be created
<module_name>       Module in which view helper should be created
[<path>]            (Optional) path to a ZF2 application
--factory | -f      Create a factory for the view helper
--ignore  | -i      Ignore coding conventions
--config  | -c      Prevent that module configuration is updated
--apidocs | -a      Prevent the api doc block generation

应用程序配置

列出所有配置选项

zf.php config list [<path>] [options]

[<path>]            (Optional) path to a ZF2 application
--local   | -l      Use local configuration file

显示单个配置值

zf.php config get <config_name> [<path>] [options]

<config_name>       Configuration key, i.e. db.host
[<path>]            (Optional) path to a ZF2 application
--local   | -l      Use local configuration file

设置单个配置值(用于更改本地配置文件中的标量值)

zf.php config set <config_name> <config_value> [<path>]

<config_name>       Configuration key, i.e. db.host
<config_value>      Configuration value, i.e. localhost
[<path>]            (Optional) path to a ZF2 application

为目录/模块生成类映射

zf.php generate classmap <directory> [<destination>]

<directory>         Directory to scan for PHP classes (use "." to use current directory)
[<destination>]     (Optional) File name for class map file or - for standard output.
                    Defaults to autoload_classmap.php inside <directory>.

ZF库安装

zf.php install <path> [<version>]

<path>              Path where to install the ZF2 library
[<version>]         (Optional) Version to install, defaults to the last version available

编译PHAR文件

您可以使用以下命令创建包含ZFTool项目的.phar文件。为了在.phar文件中编译ZFTool,您需要执行以下命令

bin/create-phar

此命令将在bin文件夹中创建一个zftool.phar文件。您只能使用此文件来执行所有ZFTool功能。在创建zftool.phar之后,我们建议将ZFTool的bin文件夹添加到您的PATH环境变量中。这样,您可以在任何地方执行zftool.phar脚本,例如执行以下命令

mv zftool.phar /usr/local/bin/zftool.phar

注意:如果由于权限而失败,请再次使用sudo运行mv行。

待办事项

  • 使用Zend\Code生成所有代码[完成]
  • 使文档块生成可选[完成]
  • 添加基本路由(可选)[完成]
  • 为配置更改创建配置器类[完成]
  • 创建用于操作请求参数的插件[完成]
  • 为给定控制器创建工厂类 [已完成]
  • 添加类映射生成配置 [已完成]
  • 重构控制器 [已完成]
  • 重新组织帮助页面 [已完成]
  • 为视图助手、控制器插件、表单、输入过滤器、hydrators 创建骨架类和配置 [进行中]
    • 视图助手
    • 控制器插件
    • 表单
    • 输入过滤器
    • hydrators
  • 为 [尚未开始] 编写测试
    • 生成器
    • 配置器
    • 控制器
    • 选项类
  • 为 [尚未开始] 创建骨架配置
    • Zend\Translate
  • 应用程序配置 [尚未开始]
    • 打开/关闭模块缓存,检查可写缓存目录
    • 支持除php之外的其他配置文件类型,例如ini、yaml等...
  • 添加模块检查 [尚未开始]
    • 确保 Module.php 有一个无参构造函数
    • 确保 getConfig() 返回可序列化的配置
    • 确保 Module.php 不保留全局状态(没有静态变量)
    • 确保由 get[A-Za-z]+Config() 返回的配置生成与 Zend\ServiceManager\Config 兼容的数组
  • 添加创建项目(不带 SkeletonApplication)的功能
  • 待续