symfony2 controller

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‘);
    }
}
时间: 2024-10-05 05:07:57

symfony2 controller的相关文章

Symfony2框架实战教程——第六天:模板重载与翻译

在未登录状态下点击“+发表新闻”按钮,也就是/news/new链接,会转跳到/oauth/login/链接,也就是第三方登录的链接(如果只实现了本地用户登录的同学,去的应该是另外一个界面,不过没关系,重载模板的原理都一样).目前第三方登录页面只有一个可怜巴巴的“QQ”这个链接,让我们也给它加上页头页尾. 不过,这个模板文件很明显不是我们自己添加的,是第三方Bundle里自带的,难道我们要去修改第三方Bundle的代码吗?库文件随便修改这样好吗?当然不好,好消息是Symfony2框架实际是提供了框

Symfony2框架实战教程——第三天:用KnpPaginatorBundle实现翻页

创建业务数据模型 新闻数据算是我们业务模型里必不可少的模型之一.根据我们之前对需求的分析,我们可以很容易想到,新闻模型News需要的属性: 标题属性 文本属性 接下来,我们要在AppBundle里创建它,但是这些数据还需要一个持久层来保存数据,例如之前配置的Mysql.目前流行的开发方式,无论是Java还是ROR,都会使用ORM将数据库字段和类属性关联起来. Symfony2框架本身并不包含ORM工具(严格意义上来说,Symfony2框架,即FrameworkBundle,不包含ORM,安全组

Symfony2框架实战教程——第二天:创建新页面

在此之前,我们先明确一下我们要实现什么功能,在开始开展具体的代码工作前先明确自己的目标是一个节省时间的好习惯.我们的需求如下: 用户可以使用新浪微博或者QQ帐号登录. 用户可以投稿,需要填写的内容为“标题”+“正文” 用户可以对某篇文章进行评论 在以上的基础上,我们继续具体化我们的需求: 用户的内容都将使用markdown格式 评论内容不可超过140个字 新闻内容不可超过5000个字 标题内容不可超过70个字 好,到这里我们的需求已经很明确了,虽然简单得似乎不可能会有人用的样子- 修改配置文件

Symfony2模版引擎使用说明手册

一.基本使用 {{ demo }}输出一个demo变量; {{% func %}}通常是包含一个twig函数例如 for; 举个for循环的例子: {{% for i in 0..10 %}} <em>{{ i }}</em> {{% endfor %}} 当然也可以打印对象,例: {{% for user in users %}} <span>user.username</span> {{% endfor %}} 注:users是从控制器中传来的对象参数

Symfony2.5开发常见错误

最近正在用Symfony2.5框架写一个境外电子商务项目,搭配webseverse编写相关接口:还好对方已经提供了相关接口,我只用写前段接口就好,但是用Symfony2.5操作数据库也是相当简单的:我接触过相当多人都觉得此框架难,分析了相关原因是它长得像Java一样,mvc思想更加根深蒂固了:但有个好处是能与像Java这些语言匹敌了.话不多说,聊下今天要讲的主题吧! 在Symfony2.5编程过程中也遇到了不少错误,我以后就将我遇到的错误总结如下,供大家参考,希望能帮助大家快速开发. 报错:Oo

Symfony2之创建一个简单的web应用

Symfony2——创建bundle     bundle就像插件或者一个功能齐全的应用,我们在应用层上开发的应用的所有代码,包括:PHP文件.配置文件.图片.css文件.js文件等都会包含在bunde系统中. 可以通过两种方法创建bundle,一种是通过命令行创建,一种是通过手动创建相应的文件和文件夹. 一:通过命令行创建,如下: 图1 执行以上命令 src/Acme/HelloBundle 被创建,指定使用的配置文件格式yml(还可以使用xml和php),同时自动在 app/AppKerne

Symfony2之创建一个简单的web应用 Symfony2——创建bundle

bundle就像插件或者一个功能齐全的应用,我们在应用层上开发的应用的所有代码,包括:PHP文件.配置文件.图片.css文件.js文件等都会包含在bunde系统中. 可以通过两种方法创建bundle,一种是通过命令行创建,一种是通过手动创建相应的文件和文件夹. 一:通过命令行创建,如下: 图1 执行以上命令 src/Acme/HelloBundle 被创建,指定使用的配置文件格式yml(还可以使用xml和php),同时自动在 app/AppKernel.php 添加一行代码,使得bundle注册

Symfony2学习笔记之数据校验

校验在web应用程序中是一个常见的任务.数据输入到表单需要被校验.数据在被写入数据库之前或者传入一个webservice时也需要被校验. Symfony2 配备了一个Validator 组件,它让校验工作变得简单易懂.该组件是基于JSR303 Bean校验规范.一个Java规范用在PHP中. 基本验证理解校验的最好方法是看它的表现.首先,假设你已经创建了一个用于你应用程序某个地方的PHP对象. //src/Acme/BlogBundle/Entity/Author.php namespace A

Symfony2学习笔记之数据库操作

数据库和Doctrine让我们来面对这个对于任何应用程序来说最为普遍最具挑战性的任务,从数据库中读取和持久化数据信息.幸运的是,Symfony和Doctrine进行了集成,Doctrine类库全部目标就是给你一个强大的工具,让你的工作更加容易. Doctrine是完全解耦与Symfony的,所以并不一定要使用它. 一个简单例子:一个产品,我们首先来配置数据库,创建一个Product对象,持久化它到数据库并把它读回来. 首先我们需要创建一个bundle: $php app/console gene