検索
ホームページphp教程php手册symfony2 controller,symfony2

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:<span>//</span><span>localhost:8000/app_dev.php/page/test name=lily</span>

3、Response

<?<span>php

namespace Scource\WebBundle\Controller;

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

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

 4、session

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

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

<span>//调用</span><span>flashmessage,只能显示一次就被抛弃,一般用在表单用户信息提示</span>
//php<br /><span>$this</span>->getRequest()->getSession()->getFlashBag()->add('notice','you have something wrong');<br /><br />//twig<br />{% for flashMessage in app.session.flashbag.get('notice') %}<br />    <div class="flash-notice"><br />        {{ flashMessage }}<br />    </div><br />{% endfor %}

 

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール