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-07-23 12:18:38 +01:00
..
File Added mime type for RAR archive, sending from Linux Chrome via nginx 2012-07-12 13:43:50 +04:00
Resources/stubs fixed CS 2012-07-09 14:54:20 +02:00
Session [HttpFoundation][Sessions] Micro-optimization 2012-07-23 12:18:38 +01:00
Tests [HttpFoundation][Sessions] Add support for extended save_path for native files save handler 2012-07-23 09:59:09 +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 Revert "raised the minimum version of PHP to 5.3.4 (closes #3856)" 2012-07-15 12:13:51 +02: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 phpdoc @param alignment 2012-05-15 22:19:31 +02:00
JsonResponse.php fix another '0' problem 2012-07-12 18:43:06 +03: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 fixed CS 2012-07-09 14:54:20 +02:00
Request.php [HttpFoundation] allow _method to be set in the query string (closes #4202) 2012-07-10 22:17:24 +02:00
RequestMatcher.php [HttpFoundation] CS and phpdoc fixes 2012-06-25 18:21:41 +02:00
RequestMatcherInterface.php fixed CS 2012-07-09 14:54:20 +02:00
Response.php [HttpFoundation] never send a 304 for non-safe HTTP methods 2012-07-21 21:52:19 +02:00
ResponseHeaderBag.php [HttpFoundation] optimize makeDisposition 2012-07-18 18:28:33 +03:00
ServerBag.php merged 2.0 2012-06-20 21:33:33 +02:00
StreamedResponse.php [HttpFoundation] CS and phpdoc fixes 2012-06-25 18:21:41 +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.

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