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
2012-12-13 16:21:49 -05:00
..
File Merge branch '2.0' into 2.1 2012-12-07 10:29:55 +01:00
Resources/stubs Nsdocblocks 2012-10-20 09:10:30 +02:00
Session [Session] Document Mongo|MongoClient argument type instead of "object" 2012-12-13 16:21:49 -05:00
Tests [Session] Support MongoClient and Mongo connection classes 2012-12-13 15:48:37 -05:00
.gitattributes Fix export-ignore on Windows 2012-11-08 10:51:48 +01:00
ApacheRequest.php [HttpFoundation] fixed ApacheRequest 2011-12-21 13:57:56 -08:00
CHANGELOG.md Update changelogs 2012-07-14 22:43:03 +01:00
composer.json Removed useless branch alias for dev-master in composer.json 2012-12-06 11:00:55 +01:00
Cookie.php [HttpFoundation] CS and phpdoc fixes 2012-06-25 18:21:41 +02:00
FileBag.php fixed CS 2012-07-09 14:54:20 +02:00
HeaderBag.php Fixed: HeaderBag::parseCacheControl() not parsing quoted zero correctly 2012-12-10 13:41:09 +01:00
JsonResponse.php [HttpFoundation] fix #5271 (duplicated header in JsonResponse) 2012-08-17 01:52:46 +02:00
LICENSE Updated LICENSE files copyright 2012-02-22 10:10:37 +01:00
ParameterBag.php [HttpFoundation] CS and phpdoc fixes 2012-06-25 18:21:41 +02:00
phpunit.xml.dist [Components] Tests/Autoloading fixes 2012-05-01 17:51:41 +02:00
README.md [Components] Tests/Autoloading fixes 2012-05-01 17:51:41 +02:00
RedirectResponse.php Allow the targetUrl on a redirect response to be set explicilty. 2012-07-27 09:40:11 -05:00
Request.php Merge branch '2.0' into 2.1 2012-12-11 11:33:11 +01:00
RequestMatcher.php Merge branch '2.0' into 2.1 2012-12-11 11:33:11 +01:00
RequestMatcherInterface.php fixed CS 2012-07-09 14:54:20 +02:00
Response.php [HttpFoundation] added some tests for the previous merge and removed dead code (closes #6037) 2012-12-11 10:29:13 +01:00
ResponseHeaderBag.php [HttpFoundation] optimize makeDisposition 2012-07-18 18:28:33 +03:00
ServerBag.php fixed docblock return type 2012-11-16 14:51:07 -02:00
StreamedResponse.php [HttpFoundation] moved the HTTP protocol check from StreamedResponse to Response (closes #5937) 2012-11-09 08:57:59 +01: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.

Loading

If you are using PHP 5.3.x you must add the following to your autoloader:

// SessionHandlerInterface
if (!interface_exists('SessionHandlerInterface')) {
    $loader->registerPrefixFallback(__DIR__.'/../vendor/symfony/src/Symfony/Component/HttpFoundation/Resources/stubs');
}

Resources

You can run the unit tests with the following command:

phpunit