laravel php view lann

I namespace ann an Laravel tha iad air am mìneachadh mar chlas de eileamaidean, far a bheil ainm eadar-dhealaichte aig gach eileamaid seach ainm a’ chlas co-cheangailte. 

Ùine leughaidh tuairmseach: 3 minuti

Ainmean-cinnidh a h-uile le ainm Laravel

Ann an Laravel, a namespace tha e na dhòigh air buidheann de chlasaichean co-cheangailte, eadar-aghaidh, gnìomhan, agus seasmhach a chuairteachadh. AN namespace tha iad air an dealbhadh gus fuasgladh fhaighinn air dà dhuilgheadas:

  • Seachain còmhstri ainm eadar a’ chòd a chruthaicheas tu agus clasaichean / gnìomhan / seasmhach PHP no clasaichean / gnìomhan / seasmhach treas-phàrtaidh;
  • Thoir seachad dòigh nas fheàrr air leasanan a chuir air dòigh agus a bhuidheann;

Laravel a’ cleachdadh àiteachan ainm gus na diofar phàirtean agus sheirbheisean aige a chuir air dòigh gu riaghailteach. Mar eisimpleir, an t-ainm-àite bunaiteach airson luchd-riaghlaidh ann an tagradh Laravel è App\Http\Controllers. Tha seo a’ ciallachadh ma chruthaicheas tu clas smachd, gum bu chòir a chuir am broinn an fhànais seo gus a luchdachadh gu fèin-ghluasadach leis an inneal luchdachadh fèin-ghluasadach stèidhichte air Composer di Laravel.

Seo eisimpleir de mar a dh’ fhaodadh tu àite-ainm ainmeachadh ann an rianadair Laravel:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class MyController extends Controller
{
    // Controller methods
}

Anns an eisimpleir seo App\Http\Controllers tha an t-ainm-àite e MyController tha clas taobh a-staigh an ainm-àite sin. Nuair a chleachdas tu am prìomh fhacal use, faodaidh tu clasaichean a thoirt a-steach bho àiteachan ainmean eile gun a bhith agad ri iomradh a thoirt air an àite ainm slàn aca. AN namespace air an ainmeachadh aig toiseach nam faidhlichean PHP a’ cleachdadh am prìomh fhacal namespace air a leantainn le ainm an namespace. Laravel a’ leantainn inbhe PSR-4 airson luchdachadh clas fèin-ghluasadach, agus mar sin bidh an structar namespace gu tric a’ nochdadh structar eòlaire an tagraidh agad.

Mar a chleachdas tu Namespaces

Am prìomh fhacal use a’ leigeil leinn an t-ainm-àite a ghiorrachadh. Chì sinn an eisimpleir seo:

namespace App\Models;
 
class File {

    public function TheMethodThatGetsFiles()
    {
    }
}

Mar as trice bithear a’ cleachdadh ainmean-àite ann an rianadairean

app/controllers/FileController.php

namespace App\Controllers;

use App\Models\File;

class FileController {
    public function someMethod()
    {
        $file = new File();
    }
}

Nuair a chuireas tu clas ann an a namespace, gus faighinn gu gin de na clasaichean togte, feumaidh tu fios a chuir thuca bho Root Namespace

Mar eisimpleir $stdClass = new stdClass(); diventa $stdClass = new \stdClass();

Gus feadhainn eile a thoirt a-steach namespace:

use App\Models\File;

Leigidh seo leat an clas a chleachdadh File às aonais còd na sgìre namespace.

Feumaidh tu an cur namespace aig a’ mhullach gus eisimeileachd an fhaidhle a thuigsinn gu furasta. Às deidh sin, ruith an composer dump-autoload. Ma tha thu airson logadh a-steach gu FileController, bidh feum air mìneachadh route agus sònraich an t-ainm-àite làn-theisteanas a bheir ath-stiùireadh dha gu modh ainmichte an rianadair.

Route::get('file', 'App\\Controllers\\FileController@TheMethod');

Dearbhadh de namespace

Am prìomh fhacal cleachdadh a’ leigeil le luchd-leasachaidh am faidhle a ghiorrachadh namespace.

use <namespace-name>;

Il namespace default air a chleachdadh ann an Laravel è App, ach faodaidh neach-cleachdaidh am faidhle atharrachadh namespace gus a bhith co-ionnan ris an aplacaid lìn Cruthachadh a namespace air a mhìneachadh leis an neach-cleachdaidh leis an àithne artisan Tha e mar a leanas:

php artisan app:name SocialNet

Il namespace, aon uair ‘s gu bheil e air a chruthachadh, faodaidh grunn fheartan a bhith ann a ghabhas cleachdadh ann an controller agus ann an diofar chlasaichean.

Leughaidhean Co-cheangailte

Ercole Palmeri

Autore