HttpFoundation: pyyntö ja vastaus
Käärikää superglobaalit HttpFoundation Request -olioihin ja luokaa Response-olioita.
HttpFoundation: pyyntö ja vastaus on ilmainen PHP Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu PHP Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. PHP Academy-kurssilla on yhteensä 4 oppituntia.
Mikä on HttpFoundation?
Symfony HttpFoundation on itsenäinen PHP-komponentti, joka käärii HTTP:n raakasupertietueet ($_GET, $_POST, $_SERVER) selkeisiin olio-ohjelmointiluokkiin.
HttpFoundationin asentaminen
Asenna se itsenäisenä pakettina Composerilla.
$ composer require symfony/http-foundationRequest-olion luominen globaaleista muuttujista
Ota nykyinen HTTP-pyyntö talteen supertietueista.
<?php
use Symfony\Component\HttpFoundation\Request;
$request = Request::createFromGlobals();
echo $request->query->get("page", 1); // GET param
echo $request->request->get("email"); // POST param
echo $request->headers->get("User-Agent"); // headerSyötteen lukeminen
Request tarjoaa tyypitetyt säiliöt eri syötelähteille.
<?php
$request->query->get("id"); // $_GET
$request->request->get("name"); // $_POST
$request->attributes->get("key"); // route attributes
$request->cookies->get("token"); // $_COOKIE
$request->files->get("avatar"); // $_FILES
$request->server->get("REMOTE_ADDR"); // $_SERVERRequest-metodit
Tarkista HTTP-metodi ja polku.
<?php
$request->getMethod(); // "GET", "POST", etc.
$request->isMethod("POST"); // bool
$request->getPathInfo(); // "/api/users/1"
$request->getHost(); // "example.com"
$request->isSecure(); // true if HTTPSResponsen rakentaminen
Luo ja lähetä HTTP-vastaus.
<?php
use Symfony\Component\HttpFoundation\Response;
$response = new Response("Hello World", 200, [
"Content-Type" => "text/plain",
]);
$response->send();JsonResponse
Palauta JSON automaattisesti oikealla Content-Type-otsakkeella.
<?php
use Symfony\Component\HttpFoundation\JsonResponse;
$response = new JsonResponse(["status" => "ok", "id" => 42]);
$response->send();RedirectResponse
Ohjaa käyttäjä toiseen URL-osoitteeseen.
<?php
use Symfony\Component\HttpFoundation\RedirectResponse;
$response = new RedirectResponse("/dashboard", 302);
$response->send();Otsakkeiden ja evästeiden määrittäminen
Lisää otsakkeet ja evästeet vastauksiin ennen niiden lähettämistä.
<?php
$response->headers->set("X-Rate-Limit", "100");
$response->headers->setCookie(
new Cookie("prefs", "dark", time() + 86400, "/", null, true, true)
);BinaryFileResponse
Suoratoista tiedostolataukset tehokkaasti BinaryFileResponse-luokan avulla.
<?php
use Symfony\Component\HttpFoundation\BinaryFileResponse;
$response = new BinaryFileResponse("/path/to/file.pdf");
$response->setContentDisposition("attachment", "report.pdf");
$response->send();StreamedResponse
StreamedResponse lähettää dataa sitä mukaa, kun sitä tuotetaan, joten se sopii suurten vientien tai reaaliaikaisen suoratoiston käsittelyyn.
Yhteenveto
HttpFoundation käärii supertietueet Request-olioon ja rakentaa vastauksia Response-, JsonResponse- ja RedirectResponse-luokilla. Se on sekä Laravelin että Symfonyn käyttämä HTTP-kerros.
Pikatarkistus
Mikä säiliö käsittelee GET-kyselyparametreja HttpFoundationin Request-oliossa?
Opi PHP tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 49
- Oppitunnit
- 195
Usein kysytyt kysymykset
Onko oppitunti ”HttpFoundation: pyyntö ja vastaus” ilmainen?
Kyllä – oppitunnin ”HttpFoundation: pyyntö ja vastaus” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko PHP Academy-kurssin, päivitä CoddyKit PROhon. PHP Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”HttpFoundation: pyyntö ja vastaus”?
Käärikää superglobaalit HttpFoundation Request -olioihin ja luokaa Response-olioita. Harjoittelet PHP Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni PHP Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin PHP Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”HttpFoundation: pyyntö ja vastaus”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä PHP Academy-oppitunnilla?
Kyllä. Jokainen PHP Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- HttpFoundation: pyyntö ja vastaus
- DependencyInjection-kontti
- EventDispatcher: löyhästi kytketyt tapahtumat
- Console-komponentti: CLI-komennot