heartsentwined/zf2-phing-task

为 ZF2 应用收集的 Phing 任务。

v2.1.3 2016-07-06 12:27 UTC

This package is not auto-updated.

Last update: 2024-09-14 13:07:38 UTC


README

为 ZF2 应用收集的 Phing 任务。

注意:在引导过程中,它将查找 config/application.config.yml 而不是 config/application.config.php。如果您使用 PHP 配置文件,您必须更改每个任务的 main() 方法中的代码。

安装

Composer:

{
  "require": {
    "yalesov/zf2-phing-task": "2.*"
  }
}

Phing 并未包含在此包中。

您可以通过 Composer 安装它,并在 vendor/bin/phing 使用 CLI。

{
  "require": {
    "phing/phing": "*"
  }
}

或通过 PEAR,并在 phing 使用 CLI。

$ pear channel-discover pear.phing.info
$ pear install [--alldeps] phing/phing

使用方法

在继续使用其余任务之前,您必须通过 ZfTask 初始化 Zf2 应用实例。

ZfTask

使用文件 foo/bootstrap.php 引导 ZF2 应用。引导文件必须返回一个 Zend\Mvc\Application 实例。

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="zf" classname="ZfTask" />
    <zf bootstrap="foo/bootstrap.php" />
  </target>
</project>

foo/bootstrap.php:

/* do some bootstrap */
$application = Zend\Mvc\Application::init(/* config array */);
return $application;

DoctrineEntityTask

为 EntityManager doctrine.entitymanager.orm_default 生成实体,基础目录在 foo/src,过滤器 Foo\Entity

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="d-entity" classname="DoctrineEntityTask" />
    <d-entity em="doctrine.entitymanager.orm_default" filter="Foo\Entity" output="foo/src" />
  </target>
</project>

DoctrineRepoTask

为 EntityManager doctrine.entitymanager.orm_default 生成仓库,基础目录在 foo/src,过滤器 Foo\Entity

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="d-repo" classname="DoctrineRepoTask" />
    <d-repo em="doctrine.entitymanager.orm_default" filter="Foo\Entity" output="foo/src" />
  </target>
</project>

DoctrineProxyTask

为 EntityManager doctrine.entitymanager.orm_default 生成代理,在目录 foo/cache/proxy,过滤器 Foo\Entity

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="d-proxy" classname="DoctrineProxyTask" />
    <d-proxy em="doctrine.entitymanager.orm_default" filter="Foo\Entity" output="foo/cache/proxy" />
  </target>
</project>

DoctrineUpdateTask

更新 EntityManager doctrine.entitymanager.orm_default 的数据库模式。

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="d-update" classname="DoctrineUpdateTask" />
    <d-update em="doctrine.entitymanager.orm_default" />
  </target>
</project>

DoctrineDropTask

从 EntityManager doctrine.entitymanager.orm_default 的连接中删除所有数据库表。

此任务与 Doctrine CLI 的行为不同。它删除 所有 表,而不仅仅是那些在元数据映射文件中找到的表。

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="d-drop" classname="DoctrineDropTask" />
    <d-drop em="doctrine.entitymanager.orm_default" />
  </target>
</project>

TwigTask

加载 Twig 模板 foo/bar

<project>
  <target>
    <includepath classpath="vendor/yalesov/zf2-phing-task/src/task" />
    <taskdef name="twig" classname="TwigTask" />
    <twig file="foo/bar" />
  </target>
</project>