symfony2 controller,symfony2
程序员文章站
2022-03-24 20:49:51
...
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 %}
上一篇: 在Mac OS的PHP环境下安装配置MemCache的全过程解析_PHP
下一篇: php输出echo、print、print_r、printf、sprintf、var_dump的区别比较_PHP教程
推荐阅读
-
解读ASP.NET 5 & MVC6系列教程(10):Controller与Action
-
MVC使用Controller代替Filter完成登录验证(Session校验)学习笔记5
-
springMVC如何将controller中Model数据传递到jsp页面
-
springMVC如何将controller中数据传递到jsp页面
-
Symfony2开发之控制器用法实例分析
-
Symfony2使用第三方库Upload制作图片上传实例详解
-
Symfony2实现在doctrine中内置数据的方法
-
Symfony2安装的方法(2种方法)
-
C# MVC模式中应该怎样区分应用程序逻辑(Controller层)和业务逻辑(Model层)?
-
详解springmvc 中controller与jsp传值