当前位置:Gxlcms > PHP教程 > symfony2controller,symfony2_PHP教程

symfony2controller,symfony2_PHP教程

时间:2021-07-01 10:21:17 帮助过:6人阅读

symfony2 controller,symfony2


1、基本概念

一次http请求 输入(Request):header信息、get信息、post数据等

输出(Response):symfony经过处理返回的信息,包括页面、json字符串、URL跳转等

2、Request

$this->getRequest()

httpie工具

HTTPie (读aych-tee-tee-pie)是一个 HTTP 的命令行客户端。其目标是让 CLI 和 web 服务之间的交互尽可能的人性化。

安装参考http://blog.csdn.net/pzw_0612/article/details/46521965

http://www.cnblogs.com/huangjacky/archive/2012/03/28/2421866.html

用httpie模拟表单提交(post)

>http -f post http://localhost:8000/app_dev.php/page/test name=lily

3、Response

php

namespace Scource\WebBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;use Symfony\Component\HttpFoundation\Response;//注意不要引用错
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RedirectResponse;

class DefaultController extends Controller
{
    /**
     * @Route("/page/test1")
     */
    public function test1Action(){
     //不使用模板,直接
输出内容或者跳转 //return new RedirectResponse('http://www.cnblogs.com/tianxintian22/');重定向 //return new JsonResponse(array('a'=>'abcdef'));返回json串 return new Response('11111111111'); } }

4、session

$this->getRequest()->getSession()->set('b', 'ni hao!');
$this->getRequest()->getSession()->get('b');

如果不能正确获取到session的值,可能是app/cache/dev目录下session的权限不对。

//调用flashmessage,只能显示一次就被抛弃,一般用在表单用户信息提示
//php
$this->getRequest()->getSession()->getFlashBag()->add('notice','you have something wrong');

//twig
{% for flashMessage in app.session.flashbag.get('notice') %}

{{ flashMessage }}

{% endfor %}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1100395.htmlTechArticlesymfony2 controller,symfony2 1、基本概念 一次http请求 输入(Request):header信息、get信息、post数据等 输出(Response):symfony经过处理返回的信...

人气教程排行