1. Laravel
  2. PHP

Laravel Mengirim data ke view

Pada artikel kali ini kita akan membahas bagaimana cara mengirim / passing data dari router / controller ke view pada Laravel.

Menggunakan Route::view

public function view(string $uri, string $view, array $data = [])

Seperti kita lihat method view pada class \Illuminate\Routing\Router menerima 3 parameter, kita telah membahas 2 parameter pertama pada artikel Memahami Routing pada Laravel. Pada artikel kali ini kita akan membahas mengenai parameter ketiga yaitu data yang merupakan sebuah array.

Parameter ketiga pada method view yaitu merupakan data yang akan kita kirimkan ke view yang didefinisikan pada parameter kedua. Contoh, kita akan mengirimkan data daftar artikel ke view blog.

Route::view('blog', 'blog', [
    'posts' => [
        'Install Laravel',
        'Memahami Routing pada Laravel'
    ],
]);

Menggunakan helper view

function view(string $view = null, array $data = [], array $mergeData = [])

Helper view merupakan shortcut atau helper yang memanggil method make dari class \Illuminate\View\Factory. Method ini berfungsi untuk merender view dan menampilkannya pada user.

Sama halnya dengan menggunakan Route::view, kita perlu mengirim parameter $data agar bisa di tampilkan pada view.

Route::get('blog', function () {
    return view('blog', [
        'posts' => [
            'Install Laravel',
            'Memahami Routing pada Laravel',
        ]
    ]);
});

Helper view bisa dipanggil juga di dalam controller action

Route::get('blog', 'BlogController@index');
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class BlogController extends Controller
{
    public function index()
    {
        return view('blog', [
            'posts' => [
                'Install Laravel',
                'Memahami Routing pada Laravel',
            ]
        ]);
    }
}

Untuk menampilkan data pada view, kita akan mengambil array keys dari parameter $data sebagai variable yang akan kita panggil di view.

<h1>Halaman Blog</h1>

<ul>
    @foreach ($posts as $post)
        <li>{{ $post }}</li>
    @endforeach
</ul>
Comments to: Laravel Mengirim data ke view

    Your email address will not be published. Required fields are marked *

    Attach images - Only PNG, JPG, JPEG and GIF are supported.