Taylor Otwell 6dd709ccaa move vendors folder under laravel. 13 years ago
..
File 6dd709ccaa move vendors folder under laravel. 13 years ago
Resources 6dd709ccaa move vendors folder under laravel. 13 years ago
Session 6dd709ccaa move vendors folder under laravel. 13 years ago
ApacheRequest.php 6dd709ccaa move vendors folder under laravel. 13 years ago
Cookie.php 6dd709ccaa move vendors folder under laravel. 13 years ago
FileBag.php 6dd709ccaa move vendors folder under laravel. 13 years ago
HeaderBag.php 6dd709ccaa move vendors folder under laravel. 13 years ago
JsonResponse.php 6dd709ccaa move vendors folder under laravel. 13 years ago
LICENSE 6dd709ccaa move vendors folder under laravel. 13 years ago
LaravelRequest.php 6dd709ccaa move vendors folder under laravel. 13 years ago
ParameterBag.php 6dd709ccaa move vendors folder under laravel. 13 years ago
README.md 6dd709ccaa move vendors folder under laravel. 13 years ago
RedirectResponse.php 6dd709ccaa move vendors folder under laravel. 13 years ago
Request.php 6dd709ccaa move vendors folder under laravel. 13 years ago
RequestMatcher.php 6dd709ccaa move vendors folder under laravel. 13 years ago
RequestMatcherInterface.php 6dd709ccaa move vendors folder under laravel. 13 years ago
Response.php 6dd709ccaa move vendors folder under laravel. 13 years ago
ResponseHeaderBag.php 6dd709ccaa move vendors folder under laravel. 13 years ago
ServerBag.php 6dd709ccaa move vendors folder under laravel. 13 years ago
StreamedResponse.php 6dd709ccaa move vendors folder under laravel. 13 years ago
composer.json 6dd709ccaa move vendors folder under laravel. 13 years ago

README.md

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

Unit tests:

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