खोज…
परिचय
सिम्फनी का अनुरोध वर्ग HTTP अनुरोध का एक वस्तु-उन्मुख प्रतिनिधित्व है। इसमें URL, क्वेरी स्ट्रिंग, अपलोड की गई फाइलें, कुकीज़ और ब्राउज़र से आने वाले अन्य हेडर जैसी जानकारी शामिल है।
वाक्य - विन्यास
- $ अनुरोध> getPathInfo (); // पथ (URL का स्थानीय भाग) लौटाता है, जो अनुरोध किया जा रहा है (लेकिन क्वेरी स्ट्रिंग के बिना)। Ie https://example.com/foo/bar?key=value पर जाने पर , इसमें / foo / bar शामिल होंगे
- $ अनुरोध> query-> प्राप्त ( 'आईडी'); // एक क्वेरी स्ट्रिंग पैरामीटर देता है ($ _GET)
- $ अनुरोध-> क्वेरी-> प्राप्त ('आईडी', 1); // एक डिफ़ॉल्ट मान के साथ एक क्वेरी स्ट्रिंग पैरामीटर देता है
- $ अनुरोध> अनुरोध> प्राप्त ( 'नाम'); // एक अनुरोध निकाय चर ($ _POST) लौटाता है
- $ अनुरोध> फ़ाइलों> प्राप्त ( 'लगाव'); // "अनुलग्नक" द्वारा पहचाने गए UploadedFile का एक उदाहरण देता है
- $ अनुरोध> cookies-> प्राप्त ( 'PHPSESSID'); // एक कुकी का मूल्य लौटाता है ($ _COOKIE)
- $ अनुरोध> headers-> प्राप्त ( 'content_type'); // एक HTTP अनुरोध शीर्ष लेख लौटाता है
- $ अनुरोध> getMethod (); // HTTP अनुरोध विधि (GET, POST, PUT, DELETE, आदि) लौटाता है।
- $ अनुरोध> getLanguages (); // क्लाइंट्स स्वीकार करता है भाषाओं की एक सरणी देता है
क्वेरी स्ट्रिंग पैरामीटर प्राप्त करना
कहते हैं कि हम उत्पादों की एक पृष्ठबद्ध सूची बनाना चाहते हैं, जहाँ पृष्ठ की संख्या एक क्वेरी स्ट्रिंग पैरामीटर के रूप में पारित की जाती है। उदाहरण के लिए, तीसरा पृष्ठ लाने के लिए, आप यहां जाएंगे:
http://example.com/products?page=3
कच्चे HTTP अनुरोध कुछ इस तरह दिखेगा:
GET /products?page=3 HTTP/1.1
Host: example.com
Accept: text/html
User-Agent: Mozilla/5.0 (Macintosh)
अनुरोध ऑब्जेक्ट से पृष्ठ संख्या प्राप्त करने के लिए, आप query
संपत्ति तक पहुँच सकते हैं:
$page = $request->query->get('page'); // 3
page
पैरामीटर के मामले में, क्वेरी स्ट्रिंग पैरामीटर सेट नहीं होने की स्थिति में आप संभवतः एक डिफ़ॉल्ट मान पास करना चाहेंगे:
$page = $request->query->get('page', 1);
इसका मतलब है कि जब कोई http://example.com/products (क्वेरी स्ट्रिंग की अनुपस्थिति को नोट करता है) पर जाता है, तो $page
चर में डिफ़ॉल्ट 1
शामिल होगा।
वैश्विक चर से अनुरोध वस्तु बनाना
PHP कई तथाकथित वैश्विक चर को उजागर करता है जिसमें HTTP अनुरोध के बारे में जानकारी होती है, जैसे $_POST
, $_GET
, $_FILES
, $_SESSION
, आदि। Request
वर्ग में एक Request
एक स्थिर createFromGlobals()
विधि शामिल है। इन चरों पर आधारित वस्तु:
use Symfony\Component\HttpFoundation\Request;
$request = Request::createFromGlobals();
सिम्फनी फ्रेमवर्क का उपयोग करते समय, आपको अनुरोध ऑब्जेक्ट को तुरंत नहीं करना चाहिए। इसके बजाय, आपको उस ऑब्जेक्ट का उपयोग करना चाहिए, जो कि जब app.php
/ app_dev.php
में बूटस्ट्रैप किया जाता है, तो उसे तत्काल app_dev.php
। उदाहरण के लिए , अपने नियंत्रक में अनुरोध ऑब्जेक्ट को टाइप करके।
POST वैरिएबल एक्सेस करना
method="post"
साथ सबमिट किए गए फॉर्म की सामग्री प्राप्त करने के लिए, post
संपत्ति का उपयोग करें:
$name = $request->request->get('name');
एक कुकी की सामग्री तक पहुँचना
$id = $request->cookies->get('PHPSESSID');
यह ब्राउज़र द्वारा भेजी गई 'PHPSESSID' कुकी का मान लौटाएगा।