Laravel - Просмотры

В среде MVC буква “V” означает Views. Он разделяет логику приложения и логику представления. Просмотры хранятся вresources/viewsкаталог. Как правило, представление содержит HTML-код, который будет обслуживаться приложением.

пример

Обратите внимание на следующий пример, чтобы понять больше о представлениях -

Step 1 - Скопируйте следующий код и сохраните его в resources/views/test.php

<html>
   <body>
      <h1>Hello, World</h1>
   </body>
</html>

Step 2 - Добавьте следующую строку в app/Http/routes.php файл, чтобы установить маршрут для указанного выше вида.

app/Http/routes.php

Route::get('/test', function() {
   return view('test');
});

Step 3 - Посетите следующий URL-адрес, чтобы увидеть результат просмотра.

http://localhost:8000/test

Step 4 - Результат будет таким, как показано на следующем изображении.

Передача данных в представления

При создании приложения может потребоваться передать данные в представления. Передайте массив для просмотра вспомогательной функции. После передачи массива мы можем использовать ключ, чтобы получить значение этого ключа в файле HTML.

пример

Обратите внимание на следующий пример, чтобы понять больше о передаче данных в представления -

Step 1 - Скопируйте следующий код и сохраните его в resources/views/test.php

<html>
   <body>
      <h1><?php echo $name; ?></h1>
   </body>
</html>

Step 2 - Добавьте следующую строку в app/Http/routes.php файл, чтобы установить маршрут для указанного выше вида.

app/Http/routes.php

Route::get('/test', function() {
   return view('test',[‘name’=>’Virat Gandhi’]);
});

Step 3 - Значение имени ключа будет передано в файл test.php, и $ name будет заменено этим значением.

Step 4 - Посетите следующий URL-адрес, чтобы увидеть результат просмотра.

http://localhost:8000/test

Step 5 - Результат будет таким, как показано на следующем изображении.

Совместное использование данных со всеми представлениями

Мы видели, как мы можем передавать данные в представления, но иногда возникает необходимость передавать данные во все представления. Laravel делает это проще. Есть метод под названиемshare()которые можно использовать для этой цели. Вshare()Метод примет два аргумента: ключ и значение. Обычноshare()метод может быть вызван из метода загрузки поставщика услуг. Мы можем использовать любого поставщика услуг,AppServiceProvider или наш собственный поставщик услуг.

пример

Обратите внимание на следующий пример, чтобы понять больше об обмене данными со всеми представлениями -

Step 1 - Добавьте следующую строку в app/Http/routes.php файл.

app/Http/routes.php

Route::get('/test', function() {
   return view('test');
});

Route::get('/test2', function() {
   return view('test2');
});

Step 2 - Создайте два файла просмотра - test.php и test2.phpс тем же кодом. Это два файла, которые будут обмениваться данными. Скопируйте следующий код в оба файла.resources/views/test.php & resources/views/test2.php

<html>
   <body>
      <h1><?php echo $name; ?></h1>
   </body>
</html>

Step 3 - Измените код метода загрузки в файле app/Providers/AppServiceProvider.phpкак показано ниже. (Здесь мы использовали метод совместного использования, и данные, которые мы передали, будут доступны всем представлениям.)app/Providers/AppServiceProvider.php

<?php

namespace App\Providers;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider {
   
   /**
      * Bootstrap any application services.
      *
      * @return void
   */

   public function boot() {
      view()->share('name', 'Virat Gandhi');
   }

   /**
      * Register any application services.
      *
      * @return void
   */

   public function register() {
      //
   }
}

Step 4 - Visit следующие URL-адреса.

http://localhost:8000/test
http://localhost:8000/test2

Step 5 - Результат будет таким, как показано на следующем изображении.