Creare functie laravel si utilizata in View

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Stefan
Mesaje: 117

Creare functie laravel si utilizata in View

Salut, de curand m-am apucat sa studiez laravel si cum nu am mai lucrat cu vreun framework sau cu OOP acum imi este mai greu. Vreau sa fac o functie care sa numere randurile dintr o tabela din baza de date, si am cateva intrebari

In primul rand, functiile trebuie create in directorul "controllers"?
Cum afisez rezultatul returnat de o functie?
Pentru a accesa o functie, trebuie inclus fisierul? Sau la afisare se pune calea catre controller?

Am facut asa, dar nu stiu cum sa testez

Cod: Selectaţi tot

<?php
class ArticoleController extends BaseController {
    public function nr_articole()
    {
        $numar = DB::table('articole')->count();
        retun $numar;
    }
}
EDIT:
Am rezolvat

Cod: Selectaţi tot

<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;

class ArticoleController extends Controller {
    public static function nr_articole()
    {
        $numar = DB::table('articole')->count();
        return $numar;
    }
}
- fisier din view

Cod: Selectaţi tot

@extends('layout.master')

<?php
use App\Http\Controllers\ArticoleController;
?>

{{ ArticoleController::nr_articole() }}
@section('header')
  @include('layout.index.header')
  @include('layout.index.hero')
  @include('layout.index.intro')
  @include('layout.index.divider')
  @include('layout.index.newsletter')
@stop

@section('footer')
  @include('layout.index.footer')
@stop
Cum pot face sa nu mai folosesc linia respectiva de cod? ("use ..")

MarPlo Mesaje: 4343
Salut,
E necesar sa stii sa lucrezi cu Rute si Views.
Studiaza pe rand lectiile de la cursul Laravel de pe site: marplo.net/php-mysql/laravel-tutoriale

- Legat de Controller, vezi explicatiile si exemplele de la urmatorul tutorial, sunt simple si la obiect:
marplo.net/php-mysql/laravel-controller

- Linia de cod cu "use ..." e necesara pentru a include clasele necesare.

Stefan Mesaje: 117
Deci daca vreau sa folosesc o clasa intr-o anumita pagina, trebuie sa pun acea secventa de cod la inceputul fisierului din view?

Marius Mesaje: 60
In fisierul template pt. View nu e nevoie sa adaugi linie de cod cu "use ..." daca e apelat din Controller sau Route.
Vezi tutorialul de pe site: marplo.net/php-mysql/laravel-views-fisiere-template

- Deci, daca View-ul e apelat din Route sau Controller cu argumentele necesare pt. variabilele din template nu se adauga "use ...".
- Linia de cod cu "use ..." in View se adauga cand in acel template apelezi functii /metode dintr-un Controller.

Subiecte similare