`
xieye
  • 浏览: 834806 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

phalcon对控制器返回值的使用以输出json

    博客分类:
  • PHP
阅读更多
在phalcon里,控制器的Action的方法的返回值没啥用。

通过事件管理器,让返回值起作用。

例如

    public function indexAction()
    {
        $this->view->disable();
        return ['aa'=>1, 'status'=> 0 ];

    }


上面这个代码,打开页面没有输出。

而我现在希望,能和laravel 一样,返回数组的话,能自动输出json格式。

利用phalcond的事件管理器,轻松实现此要求,代码如下:
$di->setShared('dispatcher', function()use($di) {
    $dispatcher = new Dispatcher();
    $dispatcher->setDefaultNamespace('Learn_phalcon\Modules\Frontend\Controllers');
    $eventManager = new EventsManager();
    $eventManager->attach('dispatch:afterDispatch' ,function (Event $event, $dispatcher)use($di) {
        $arr = $dispatcher->getReturnedValue();// 获取action的返回
        if (is_array($arr)) { // 判断是否是数组,
            $response = $di->getResponse();
            $response->setHeader('Content-Type', 'application/json');
            $response->setContent(json_encode($arr, JSON_UNESCAPED_UNICODE));
            $response->send();
        }
    });
    $dispatcher->setEventsManager($eventManager);
    return $dispatcher;
});

让phalcon再次wei大!
0
0
分享到:
评论

相关推荐

    phalcon框架简易版包含控制器、模型、视图包含了展示与添加的功能

    在标题和描述中提到的"phalcon框架简易版"是一个专门为新手设计的简化版本,它包括了控制器(Controllers)、模型(Models)和视图(Views)这三个关键组件,这些都是MVC(Model-View-Controller)架构模式的基础...

    php phalcon项目实战

    通过官方API文档,我们可以了解到每个类的功能、方法、参数和返回值,这对于学习和使用Phalcon至关重要。 1. **路由(Routing)**:Phalcon的路由系统允许我们定义URL模式并将其映射到相应的控制器和操作。这使得...

    phalcon 中文文档 全中文手册

    4. **控制器与视图**:手册会讲解如何创建控制器处理用户请求,以及如何使用视图来渲染和展示数据。这通常涉及模板引擎的使用,如volt,以及变量传递和布局管理。 5. **模型与数据库操作**:Phalcon提供了ORM(对象...

    phalcon.dll(windows phalcon插件)

    4. 验证安装:在PHP脚本中使用`phpinfo()`函数,查看输出信息中是否包含了Phalcon的相关信息。这证明了Phalcon已经成功加载。 "LICENSE.txt"文件通常包含了软件的许可协议,对于开源项目如Phalcon,这通常会是MIT、...

    phalcon 中文参考文档

    作为一款全栈框架,Phalcon包含了路由、视图、模型、控制器、数据库适配器、缓存等多个核心组件,为开发者提供了丰富的功能和高效的开发工具。 中文参考文档"phalcon_zh_cn_docs"涵盖了Phalcon框架的各个方面,是...

    phalcon多模块接口开发模板

    在使用这个模板时,开发者可以按照自己的需求创建新的模块,每个模块都有自己的`controllers`目录,包含具体处理业务逻辑的控制器。同时,可以继承`ControllerBase`,利用已有的日志和JSON响应功能,减少重复代码。...

    swoole-phalcon

    3. 创建Swoole服务器:使用Swoole创建一个服务器实例,并配置Phalcon的前端控制器(如`public/index.php`)作为处理器。 4. 调整Phalcon配置:配置Phalcon以适应Swoole的运行环境,例如关闭session的文件存储,因为...

    phalcon 中文chm文档

    4. **路由(Routing)**:Phalcon的路由系统允许开发者定义URL模式和处理这些URL的控制器动作,文档中详细介绍了如何配置和使用路由规则。 5. **依赖注入(Dependency Injection, DI)**:Phalcon的DI容器支持服务...

    PhalconPHP 3.4.0.zip

    修复Phalcon\Debug\Dump::output的回归(#13308)以正确使用详细模式#13315;修正Phalcon\Mvc\Model\Query\Builder::having和Phalcon\Mvc\Model\Query\Builder::在哪里正确合并绑定类型#11487;修正Phalcon\Mvc\...

    Phalcon 3.0.0 中文文档

    作为一款全栈框架,Phalcon提供了一系列组件,涵盖了从路由、数据库交互到视图渲染等多个方面,使得开发者能够以更简洁、高效的方式编写代码。 一、Phalcon的特性与优势 1. C语言扩展:Phalcon是用C语言编写的,并...

    Phalcon1.3中文手册,纯手工翻译

    1. MVC架构:Phalcon遵循模型-视图-控制器(MVC)模式,这使得开发人员能够清晰地分离业务逻辑、数据处理和用户界面。控制器处理HTTP请求,模型处理数据操作,而视图负责展示结果。 2. ORM(对象关系映射):...

    PHP7框架Phalcon7 v1.2.3

    开发者不需要学习和使用 C 语言的功能, 因为所有的功能都以 PHP 类的方式暴露出来,可以直接使用。 Phalcon 也是松耦合的,可以根据项目的需要任意使用其他对象。Phalcon 不只是为了卓越的性能, 我们的目标是让它...

    phalcon IDE代码提示库

    Phalcon DevTools提供了一系列辅助工具,包括模型生成器、控制器生成器、Scaffold(脚手架)以及代码提示功能,极大地提升了开发者的生产力。通过这些工具,你可以快速创建项目结构,自动生成代码,使得开发过程更加...

    phalcon文档附中文笔记

    笔记中可能涵盖了Phalcon的安装配置、控制器和视图的使用、模型的创建、数据库查询、缓存管理、安全实践等方面,这些都是在实际开发中必不可少的知识点。 在Phalcon中,控制器负责处理HTTP请求,模型则用于业务逻辑...

    Phalcon php框架 v2.0.2.zip

    PhalconPHP 是一个使用 C 扩展开发的 PHP Web 框架,提供高性能和低资源占用。   Phalcon 是一个开源的、全堆栈的 PHP 5 框架,使用 C 扩展编写,专门为高性能优化。无需学习和使用 C 语言,所有函数都以 PHP 类...

    phalcon框架的demo

    Invo是一个开源项目,它展示了Phalcon的主要功能,包括路由、模型、视图、控制器以及数据库交互。通过这个项目,我们可以深入学习Phalcon框架的以下关键知识点: 1. **路由**:Phalcon的路由系统允许开发者定义URL...

    phalcon2中文手册+教程+DEMO

    手册涵盖了框架的各个组件,如路由、控制器、视图、模型、数据库适配器等。它深入浅出地解释了Phalcon的API,让开发者能够快速理解和掌握如何在PHP环境中使用这些功能。特别的是,手册提供了中文版本,对于中文使用...

Global site tag (gtag.js) - Google Analytics