This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
symfony/src/Symfony/Component/HttpFoundation
Fabien Potencier cc9eff0bc6 merged 2.0
2011-12-26 21:57:48 +01:00
..
File fixed merge 2011-12-23 09:21:58 +01:00
SessionStorage fixed CS 2011-12-18 14:36:25 +01:00
ApacheRequest.php [HttpFoundation] fixed ApacheRequest 2011-12-21 13:57:56 -08:00
composer.json bumped Symfony version in composer.json files to 2.0.7 2011-11-17 06:58:47 +01:00
Cookie.php [HttpFoundation] Cookie values should not be restricted 2011-11-23 11:38:46 +01:00
FileBag.php [DoctrineBridge] fixed some CS 2011-12-13 10:22:12 +01:00
HeaderBag.php [HttpFoundation] tagged public @api 2011-07-20 10:06:02 +02:00
LICENSE added LICENSE files for the subtree repositories 2011-02-22 18:58:15 +01:00
ParameterBag.php merged 2.0 2011-12-26 21:57:48 +01:00
README.md tweaked the README files 2011-12-18 14:22:28 +01:00
RedirectResponse.php [RedirectResponse] Added missing doctype and title tag 2011-08-24 05:31:42 +03:00
Request.php fixed CS 2011-12-18 14:36:25 +01:00
RequestMatcher.php fixed CS 2011-12-18 14:36:25 +01:00
RequestMatcherInterface.php [HttpFoundation] tagged public @api 2011-07-20 10:06:02 +02:00
Response.php fixed CS 2011-12-18 14:36:25 +01:00
ResponseHeaderBag.php fixed CS 2011-12-18 14:36:25 +01:00
ServerBag.php fixed CS 2011-12-18 14:36:25 +01:00
Session.php moved management of the locale from the Session class to the Request class 2011-10-08 18:34:49 +02:00

HttpFoundation Component

HttpFoundation defines an object-oriented layer for the HTTP specification.

It provides an abstraction for requests, responses, uploaded files, cookies, sessions, ...

In this example, we get a Request object from the current PHP global variables:

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

$request = Request::createFromGlobals();
echo $request->getPathInfo();

You can also create a Request directly -- that's interesting for unit testing:

$request = Request::create('/?foo=bar', 'GET');
echo $request->getPathInfo();

And here is how to create and send a Response:

$response = new Response('Not Found', 404, array('Content-Type' => 'text/plain'));
$response->send();

The Request and the Response classes have many other methods that implement the HTTP specification.

Resources

Unit tests:

https://github.com/symfony/symfony/tree/master/tests/Symfony/Tests/Component/HttpFoundation