【问题标题】:How to create a script for the command line in PHP with Zend Framework?如何使用 Zend Framework 为 PHP 中的命令行创建脚本?
【发布时间】:2010-10-08 11:42:30
【问题描述】:

我需要创建一个将使用 PHP 在命令行上运行的脚本,并且我想利用 ZF 和我使用它编写的模型(类)。如何尽可能优雅地做到这一点?

【问题讨论】:

    标签: php zend-framework command-line-interface


    【解决方案1】:

    你必须复制 public/index.php 的代码而不调用 Zend_Application 的 run 方法(它做 MVC 的东西)并且只加载你需要的资源。

    #!/usr/bin/php
    <?php
    define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
    
    set_include_path(realpath(APPLICATION_PATH . '/../library'));
    
    require_once 'Zend/Application.php';
    
    $application = new Zend_Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
    );
    // Load only the ressources that you need
    $application->getBootstrap()->bootstrap(
        array(
            'Db'
        )
    );
    
    // Do stuff
    

    注意调整它以适应您的 cli 脚本的位置。

    【讨论】:

      【解决方案2】:

      基本上,CLI 界面只是一个不同的表示层。如果你保持 M 与 VC 的分离干净,你所需要的只是一个新的入口点来处理模型,例如你的 CLI 界面。

      您可以使用Zend_Console_Getopt 来简化 CLI 客户端的开发。它允许您快速解析传递给 CLI 脚本的输入。然后,您必须将任何输入委托给您的模型,就像您“定期”一样。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-12
        • 2011-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-07
        • 2016-10-19
        相关资源
        最近更新 更多