ارسال داده به View
| روش ارسال داده به ویو | توضیحات |
|---|---|
| view('view.name', ['key' => 'value']) | ارسال دادهها به ویو با استفاده از آرایهٔ کلید-مقدار. |
| view('view.name')->with('key', 'value') | ارسال دادهها با استفاده از متد with برای اضافه کردن یک متغیر به ویو. |
| view('view.name')->with(['key1' => 'value1', 'key2' => 'value2']) | ارسال چندین داده با استفاده از متد with بهصورت آرایه. |
| view('view.name')->share('key', 'value') | اشتراکگذاری دادهها برای دسترسی در تمامی ویوها. |
| view('view.name')->with(compact('variable')) | ارسال متغیر به ویو با استفاده از تابع compact. |
| view('view.name', ['key' => $value]) | ارسال دادهها به ویو با استفاده از متغیرهای موجود در کنترلر. |
📦 ارسال داده با استفاده از آرایهٔ کلید-مقدار
class aboutController extends Controller
{
function index(){
return view('about',['name'=>"kia","family"=>"moradi"]);
}
}
در اینجا، {{ $name }} و {{ $age }} به ترتیب مقدارهای James و 30 را نمایش میدهند.
this is about page
name={{ $name }} family={{ $family }}
استفاده از متد with
این متد برای ارسال یک یا چند داده به ویو استفاده میشود.
return view('greeting')
->with('name', 'James')
->with('age', 30);
استفاده از متد compact
این متد برای ارسال متغیرهایی که نام آنها با کلیدهای آرایه همنام هستند، استفاده میشود.
$name = 'James';
$age = 30;
return view('greeting', compact('name', 'age'));
اشتراکگذاری داده با تمام ویوها
گاهی ممکن است بخواهید دادهای را با تمام ویوهای اپلیکیشن به اشتراک بگذارید. برای این کار، میتوانید از متد share استفاده کنید.
در فایل AppServiceProvider.php، متد boot را بهصورت زیر تنظیم کنید:
public function boot()
{
View::share('appName', 'My Laravel App');
}
اکنون در هر ویو، میتوانید به متغیر appName دسترسی داشته باشید
| روش ارسال داده | توضیحات |
| آرایهٔ کلید-مقدار | سادهترین روش برای ارسال دادهها به ویو. |
| متد with | مناسب برای ارسال یک یا چند داده به ویو. |
| متد compact | مناسب زمانی که نام متغیرها با کلیدهای آرایه همنام هستند. |
| متد share | برای اشتراکگذاری دادهها با تمام ویوهای اپلیکیشن. |