قراءة قيمة من ال Query String
كيف تقرأ قيمة موجودة في الرابط بعد علامة ? وتعرضها داخل الصفحة
إذا كان لديك رابط بالشكل التالي ونريد قراءة قيمة keyword
/search?keyword=Laravelسنستخدم ال Request ولذلك نضيف هذا ال Import أعلى ملف routes/web.php
use Illuminate\Http\Request;ثم نمرر ال Request إلى ال Function الخاصة بال Route
Route::get('/search', function (Request $request) {
// Read Search Keyword
});والآن نستخدم ال query Method لقراءة القيمة
$keyword = $request->query('keyword', '');القيمة الثانية هي القيمة الافتراضية التي ستستخدم إذا لم يكن keyword موجود في الرابط
ثم نرسل القيمة إلى ال View
return view('search', ['keyword' => $keyword]);وهنا ال Code كاملا داخل ملف
routes/web.php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
Route::get('/search', function (Request $request) {
$keyword = $request->query('keyword', '');
return view('search', ['keyword' => $keyword]);
});ثم ننشئ ملف
resources/views/search.blade.php
ونكتب داخله
<p>Search Keyword: {{ $keyword }}</p>الآن عند الدخول إلى /search?keyword=Laravel ستظهر قيمة Laravel داخل الصفحة
ملحوظة
هذا المثال يقرأ كلمة البحث ويعرضها فقط ولا ينفذ بحثا في قاعدة البيانات وال query() تقرأ القيم من ال Query String تحديدا