- Transmitere date catre fisiere View
- Folosire Date predefinite cu toate view-urile

Intelegere Views

Views (sau Template-uri ) in Laravel sunt fisiere '.php' stocate in directorul "resources/views", si sunt in general folosite pentru a crea continutul paginii afisata in browser. Aceste fisiere pot contine cod HTML, CSS, JavaScript si PHP.
In Laravel, exista doua tipuri de view pe care le puteti folosi: Blade (cu extensia ".blade.php" in numele fisierului) rendat cu sistemul de template Blade; sau simplu ".php" (care nu va prelucra codul de tip Blade Template).

- Exemplu simplu de utilizare fisier view Blade:
1. Copiati urmatorul cod si salvati-l intr-un fisier resources/views/light.blade.php.
<html>
<body>
<h1>View is an effect, Vision is the source</h1>
</body>
</html>
2. Adaugati urmatoarea linie in fisierul routes/web.php pentru a defini route-ul pentru view-ul de mai sus.
Route::get('/light', function(){
  return view('light');
});
3. Accesati in browser urmatorul URL pentru a vedea rezultatul view-ului.
//localhost:8000/light
- Rezultatul va apare precum se vede in imaginea de mai jos.
laravel Simple View
Daca fisierul view este intr-un sub-director din directorul "resources/views", de exemplu "resources/views/pages/name.blade.php", adaugati numele sub-directorului inainte de numele fisierului:
return view('pages.name');
Pentru a verifica daca un view exista, puteti folosi metoda exists() a clasei View din Facades. Metoda va returna true daca view-ul exista:
use Illuminate\Support\Facades\View;

if(View::exists('pages.test')){
  //
}

Transmitere date catre fisiere View

Puteti utiliza variabile in fisierele template din resources/views/, folosind aceasta sintaxa: {{$variable_name}}, apoi adaugati un array cu perechi nume=>valoare ca al doilea argument in metoda view().
"Nume" in array trebuie sa corespunda cu numele variabilei in template.

- Exemplu simplu de Blade view:
1. Copiati si salvati urmatorul cod intr-un fisier resources/views/greeting.blade.php.
<html>
<head>
<title>{{$title}}</title>
</head>
<body>
<h1>Hello {{$name}}</h1>
</body>
</html>
2. Adaugati urmatoarea linie in fisierul routes/web.php pentru a crea route-ul pentru view-ul de mai sus.
Route::get('/greeting', function(){
  $vars =['title'=>'Greetings', 'name'=>'Me'];
  return view('greeting', $vars);
});
3. Accesati in browser urmatorul URL pentru a vedea rezultatul view-ului.
//localhost:8000/greeting
- Rezultatul va apare precum se vede in imaginea urmatoare.
laravel Greetings View

Folosire Date predefinite cu toate view-urile

Daca vreti sa transitei aceleasi date la toate view-urile, folositi metoda view()->share().
Metoda share() preia doua argumente: key si valoare.
De obicei metoda share() poate fi apelata din metoda boot() a unei clase ServiceProvider.
Se poate folosi orice clasa ServiceProvider, cum ar fi: AppServiceProvider.

- Exemplu:
1. Creaza doua fisiere view: test.blade.php si test2.blade.php cu acelasi cod, in directorul "resources/views/".
- Copiaza urmatorul cod in amandoua fisierele.
<html>
<body>
<h1>Share {{$state}}</h1>
<h2>Receive {{$gift}}</h2>
</body>
</html>
2. Modificati codul metodei boot() din fisierul app/Providers/AppServiceProvider.php, cum este aratat mai jos (Aici, am folosit metoda share() si datele pe care le-am adaugat vor putea fi utilizate in toate view-urile).
&lt;?php
namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider {
  //Bootstrap any application services.
  //@return void
  public function boot(){
    view()->share('state', 'Peace');
    view()->share('gift', 'Love');
  }

  //Register any application services.
  //@return void
  public function register(){
    //
  }
}
3. Adaugati urmatoarele linii in fisierul routes/web.php.
Route::get('/test', function(){
  return view('test');
});
Route::get('/test2', function(){
  return view('test2');
});
4. Vizitati urmatoarele adrese URL:
//localhost:8000/test

//localhost:8000/test2
- Rezultatul pentru ambele adrese va aparea precum se vede in imaginea urmatoare.
laravel Greetings View

- Documentatie: Laravel - Views

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag adauga rand nou in paragraf?
<b> <br> <p>
Prima linie ...<br>
Alta linie...
Ce proprietate CSS seteaza spatiu dintre litere?
text-size word-spacing letter-spacing
#id {
  letter-spacing: 2px;
}
Ce functie obtine accesul la un element HTML cu un anumit ID?
getElementById() getElementsByTagName() createElement()
var elm = document.getElementById("theID");
var content = elm.innerHTML;
alert(content);
Clic pe instructiunea "echo" utilizata corect.
echo "CoursesWeb.net" echo "CoursesWeb.net"; echo ""CoursesWeb.net";
echo "Adresa URL: http://CoursesWeb.net";
Care din urmatoarele expresii cu "paint" (a picta) se foloseste pentru forma Negativa?
will paint not paint have painted
She does not paint that landscape.
- Ea nu picteaza acel peisaj.
Care din urmatoarele expresii cu "cantar" (a canta) se foloseste pentru propozitie Negativa?
ir a cantar cantaba no cantar
Ella no canta esa canciĆ³n.
- Ea nu canta acel cantec.
Laravel tutorial - Views

Last accessed pages

  1. Substantivul din limba engleza - The Noun (10165)
  2. Cursuri limba engleza gratuite si lectii online (14507)
  3. Limba spaniola curs online incepatori si avansati (6575)
  4. Articol definit 2 (83)
  5. Gramatica limbii engleze - Prezentare Generala (41537)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (2540)
  2. Cursuri si Tutoriale: Spaniola, Engleza, HTML, CSS, Php-Mysql, JavaScript, Ajax (1058)
  3. Alphabet and Pronunciation - Alfabetul si pronuntia in limba engleza (855)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (841)
  5. Substantivul din limba engleza - The Noun (686)