{"id":34496,"date":"2026-01-26T08:41:17","date_gmt":"2026-01-26T07:41:17","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=34496"},"modified":"2026-01-26T08:41:19","modified_gmt":"2026-01-26T07:41:19","slug":"laravel-getting-started","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/","title":{"rendered":"Laravel Getting started"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-descrizione\">Descrizione<\/h2>\n\n\n\n<p>Laravel \u00e8 stato pubblicato su Github fin dalla versione Beta il 9 giugno 2011 dal suo Ideatore <strong>Taylor Otwall<\/strong>, che ha ripreso e ustilizzato la struttura di <strong>Symfony<\/strong> e tuttora ne integra alcune librerie.<br><br>Laravel \u00e8 <strong>FrameWork PHP open source<\/strong> con licenza MIT che usa il <strong>Design Pattern MVC(Model-View-Control)<\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Model<\/strong>: gestisce i dati crea una classe che rappresente la tabella del database e si frappone tra il DB e il framework , <\/li>\n\n\n\n<li><strong>Controller<\/strong>: gestisce le richieste HTTP del server  e le interpreta tramite il Model, mostrando la View predefinita. <\/li>\n\n\n\n<li><strong>View<\/strong>: \u00e8 il template popolato con i dati richiesti, di solito Laravel usa <strong>Blade<\/strong> il motore di template predefinito ma \u00e8 possibile usare anche Framework JS come <strong>Livewire<\/strong> , <strong>React<\/strong> o <strong>Vue<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-creare-il-progetto\">Creare il progetto<\/h2>\n\n\n\n<h3>Con Composer<\/h3>\n\n\n\n<p>Per creare un progetto \u00e8 possibile usare <a href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/composer-come-funziona-il-gestore-di-pacchetti-di-php\/\">Composer<\/a> con il comando<\/p>\n\n\n<pre class=\"wp-block-code has-text-color has-background has-link-color wp-elements-3ef26108c821cf20b0320cf6db47e32a\" style=\"color:#ffffff;background-color:#040404\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\">composer create-project laravel\/laravel <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">nome-app<\/span>&gt;<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Ad esempio:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">composer create-project laravel\/laravel app-laravel<\/code><\/span><\/pre>\n\n\n<p>Successivamente eseguire:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">npm run install\nnpm run build <\/code><\/span><\/pre>\n\n\n<p>Questi comandi servono a installare e generare le librerie di javascript, <br>Bisogna modificare il file <strong><em>.env<\/em><\/strong> per configurare il database. Di default viene impostato <strong>SQLite<\/strong>, utile per studiare Laravel in locale.Per il deploy su un&#8217;host remoto sarebbe altamente consigliabile usare Mysql o PostgreSQL molto pi\u00f9 performanti e sono pi\u00f9 pratici da gestire con PHPmyAdmin o phpPgAdmin. Esempio di configurazione:<br>.env<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">\nDB_CONNECTION=pgsql\nDB_HOST=127.0.0.1\nDB_PORT=5432\nDB_DATABASE=laravel\nDB_USERNAME=user\nDB_PASSWORD=pass<\/code><\/span><\/pre>\n\n\n<p>nel file di configurazione \u00e8 possibile settare numerosi parametri come il nome del progetto , mailserver, modalit\u00e0 di sviluppo o produzione, la lingua locale, la cache e il log etc.<\/p>\n\n\n\n<h3>Con Laravel Installler<\/h3>\n\n\n\n<p>Per installare il CLI Laravel eseguire:<\/p>\n\n\n<pre class=\"wp-block-code has-text-color has-background has-link-color wp-elements-9e45704241825b60dd7f834f836645e1\" style=\"color:#ffffff;background-color:#040404\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">composer <span class=\"hljs-keyword\">global<\/span> <span class=\"hljs-keyword\">require<\/span> laravel\/installer<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Poi creare il progetto con:<\/p>\n\n\n<pre class=\"wp-block-code has-text-color has-background has-link-color wp-elements-ed6c83479df2385e940f156b4bc2f296\" style=\"color:#ffffff;background-color:#040404\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">laravel <span class=\"hljs-keyword\">new<\/span> example-app<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\" alt=\"\" \/><\/figure>\n\n\n\n<p>Durande la creazione \u00e8 possibile scegliere:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lo <strong>starterkit<\/strong> che si occuper\u00e0 del frontend (none, React, Vue e Livewire)<\/li>\n\n\n\n<li>Il framework per i test: (<strong>Pest<\/strong> o <strong>PHPUnit<\/strong>)<\/li>\n\n\n\n<li>Se vuoi puoi installare <strong>Laravel Boost per l&#8217;IA<\/strong><\/li>\n\n\n\n<li>Il database: Sqlite, Mysql, MariaDB,PgSQL, SQL server<\/li>\n\n\n\n<li>L&#8217;editor utilizzato: Claude Code, Codex, Cursor, Gemini, OpenCode, PhpStorm, VS Code<\/li>\n\n\n\n<li>eseguire npm install e npm build<\/li>\n<\/ul>\n\n\n\n<h3>Avviamo il web server<\/h3>\n\n\n\n<p>Terminata la creazione e configurazione del progetto possiamo avviare il progetto con<\/p>\n\n\n<pre class=\"wp-block-code has-text-color has-background has-link-color wp-elements-9c9489b71e4c63e37762486b3ae9ca7e\" style=\"color:#ffffff;background-color:#040404\"><span><code class=\"hljs\">php artisan serve<\/code><\/span><\/pre>\n\n\n<p>Artisan \u00e8 uno strumento intergrato che permette di:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Avviare il server di sviluppo.<\/li>\n\n\n\n<li>Creare componenti.<\/li>\n\n\n\n<li>Gestire il database.<\/li>\n\n\n\n<li>E molto altro.<\/li>\n<\/ul>\n\n\n\n<p>Ora apriamo l&#8217;indirizzo indicato dal comando artisan:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">Server running on &#91;http:<span class=\"hljs-comment\">\/\/127.0.0.1:8000].<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/start.png\" alt=\"\" \/><\/figure>\n\n\n\n<p>Per il codice JavaScript si pu\u00f2 avviare <strong>Vite<\/strong> con:<\/p>\n\n\n<pre class=\"wp-block-code has-text-color has-background has-link-color wp-elements-fd24a90ef34cf0411b3d5e760475e14f\" style=\"color:#ffffff;background-color:#040404\"><span><code class=\"hljs\">npm run dev<\/code><\/span><\/pre>\n\n\n<p>Serve a ricompilare il codice JS ogni volta che salviamo una modifica.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-creare-elementi-con-artisan\">Creare elementi con Artisan<\/h2>\n\n\n\n<p>incominciamo a creare nuovi elementi usando il comando make per esempio.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:model<\/span> <span class=\"hljs-selector-tag\">-c<\/span> <span class=\"hljs-selector-tag\">-s<\/span> <span class=\"hljs-selector-tag\">-m<\/span> <span class=\"hljs-selector-tag\">-r<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Questo comando crea una classe che estende la classe Model in seguito artisan chieder\u00e0 il nome della classe che dev&#8217;essere al singolare e la prima lettera maiuscola es.: Post<br>le opzioni servono a creare:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>-c     \u2192 crea il Controller che \u00e8 la classe che sta tra il router e la view<\/li>\n\n\n\n<li>-s     \u2192 crea il Seeder serve a inserire dati che devono essere presenti nel database alla partenza del progetto<\/li>\n\n\n\n<li>-m \u2192 crea la Migration fornisce le istruioni per creare la tabella corrispondente nel database <\/li>\n\n\n\n<li>-r    \u2192 crea un Resource \u00e8 un controller predefinito con gi\u00e0 presenti metodi da implementare per il CRUD(Create Read Update Delete)<\/li>\n<\/ul>\n\n\n\n<p>questo comando \u00e8 l&#8217;abbreviazione di:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:model<\/span> \n<span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:controller<\/span>\n<span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:seed<\/span>\n<span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:migration<\/span>\n<span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:resource<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>In questo caso user\u00f2 solo<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:model<\/span> <span class=\"hljs-selector-tag\">-c<\/span> <span class=\"hljs-selector-tag\">-s<\/span> <span class=\"hljs-selector-tag\">-m<\/span> <\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-migration-e-seeder\">Migration e Seeder<\/h2>\n\n\n\n<p>La Migration generate va modificata per aggiungere campi oltre a id e timestamps.<\/p>\n\n\n\n<p> \\database\\migrations\\&lt;data-time&gt;_&lt;operazione&gt;_&lt;nome model&gt;_table.php<\/p>\n\n\n\n<p>La migration dev&#8217;essere modificata perch\u00e8 il template di base prevede solo la chiave primaria(id) e il timestamp nel metodo up() per aggiungere nuovi campi  possiamo seguire l&#8217;esempio seguente<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">up<\/span><span class=\"hljs-params\">()<\/span>: <span class=\"hljs-title\">void<\/span> <\/span>{\n\n    Schema::create(<span class=\"hljs-string\">'posts'<\/span>, <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-params\">(Blueprint $table)<\/span> <\/span>{ \n\n        $table-&gt;id();  \n        $table-&gt;string(<span class=\"hljs-string\">'title'<\/span>);\n        $table-&gt;string(<span class=\"hljs-string\">'content'<\/span>); \n        $table-&gt;timestamps();\n\n    });\n\n}\n\n<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">down<\/span><span class=\"hljs-params\">()<\/span>: <span class=\"hljs-title\">void<\/span>\n    <\/span>{\n        Schema::dropIfExists(<span class=\"hljs-string\">'posts'<\/span>);\n    }<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre><\/div><\/div>\n\n\n\n<p>Nel metodo down() invece serve nel caso ci sia bisogno di effettuare un rollback ovvero laravel annulla a ritroso le migration effettuate deve contenere le istruzioni per eliminare ci\u00f2 che \u00e8 stato creato con up().<\/p>\n\n\n\n<p>Sono previsti numerosi tipi di dati qui alcuni esempi rispettivamente Interi, decimali, text:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">$table-&gt;integer(<span class=\"hljs-string\">'votes'<\/span>);\n$table-&gt;decimal(<span class=\"hljs-string\">'amount'<\/span>, total: <span class=\"hljs-number\">8<\/span>, places: <span class=\"hljs-number\">2<\/span>);\n$table-&gt;text(<span class=\"hljs-string\">'description'<\/span>);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Per creare effettivamente la tabella nel database  eseguiamo il comando:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">php artisan migrate<\/code><\/span><\/pre>\n\n\n<p>\\database\\seeders\\PostSeeder.php<br>qui andiamo a inserire dati all&#8217;interno della tabella appena creata possono essere utili sia come placeholder o dati necessari a far funzionare il progetto <\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">\u00a0<span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">run<\/span><span class=\"hljs-params\">()<\/span>: <span class=\"hljs-title\">void<\/span><\/span>{\n\n        &lt;em&gt;DB&lt;\/em&gt;::table(<span class=\"hljs-string\">\"posts\"<\/span>)\n        -&gt;insert(&#91;<span class=\"hljs-string\">'New'<\/span>,<span class=\"hljs-string\">'Lorem ipsum dolor sit, amet consectetur adipisicing elit. Est eligendi atque \n        voluptatem modi maiores reprehenderit iure ipsum mollitia exercitationem dolore perferendis facere dolor, \n        expedita eaque excepturi reiciendis ullam hic. Dolore.'<\/span>]);\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>all&#8217;interno di \\database\\seeders\\DatabaseSeeder.php andiamo a inserire tutti i seeders creati per evitare di eseguire ogni seeder singolarmente<\/p>\n<\/div><\/div>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-11\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">run<\/span><span class=\"hljs-params\">()<\/span>: <span class=\"hljs-title\">void<\/span>\n    <\/span>{\n         <span class=\"hljs-keyword\">$this<\/span>-&gt;call(&#91;\n\n            PostSeeder::class,\n\n    ]);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-11\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>esegui <\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-12\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">db<\/span><span class=\"hljs-selector-pseudo\">:seed<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-12\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p>in \/route\/web.php andiamo a scrivere la nuova route di nome &#8216;post&#8217; usiamo il metodo GET  che quando chiamiamo l&#8217;URL localhost:8000\/post andr\u00e0 a chiamare la classe &#8216;PostController&#8217; metodo<br>  index()<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-13\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">Route::get(<span class=\"hljs-string\">'\/post'<\/span>, &#91;PostController::class,<span class=\"hljs-string\">'index'<\/span>])-&gt;name(<span class=\"hljs-string\">'post'<\/span>);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-13\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>nel controller PostController andremo a scrivere il metodo index()\nche richiamer\u00e0 il Model Post prender\u00e0 i dati e li inserir\u00e0 nella \nnuova pagina che andremo a scrivere.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-14\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\"><span class=\"php\"><span class=\"hljs-meta\">&lt;?php<\/span>\n<span class=\"hljs-keyword\">namespace<\/span> <span class=\"hljs-title\">App<\/span>\\<span class=\"hljs-title\">Http<\/span>\\<span class=\"hljs-title\">Controllers<\/span>;\n\n<span class=\"hljs-keyword\">use<\/span> <span class=\"hljs-title\">Illuminate<\/span>\\<span class=\"hljs-title\">Http<\/span>\\<span class=\"hljs-title\">Request<\/span>; \n<span class=\"hljs-keyword\">use<\/span> <span class=\"hljs-title\">App<\/span>\\<span class=\"hljs-title\">Models<\/span>\\<span class=\"hljs-title\">Post<\/span>;\n\n<span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">PostController<\/span> <span class=\"hljs-keyword\">extends<\/span> <span class=\"hljs-title\">Controller<\/span><\/span>{      \n\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-function\"><span class=\"hljs-keyword\">function<\/span> <span class=\"hljs-title\">index<\/span><span class=\"hljs-params\">()<\/span><\/span>{\n        $post = Post::all(); \n        <span class=\"hljs-keyword\">return<\/span> view(<span class=\"hljs-string\">'post'<\/span>,&#91;<span class=\"hljs-string\">'posts'<\/span>=&gt;$posts]);          \n    }\n<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-14\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre><\/div><\/div>\n\n\n\n<p>se vogliamo mantenere il nome della variabile all&#8217;interno della view [&#8216;posts&#8217;=&gt;$posts] equivale a scrivere compact(&#8216;posts&#8217;) mentre nel caso volessimo cambiare variabile potremmo scrivere [&#8216;articoli&#8217;=&gt;$posts] <br>ora creiamo la view con:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-15\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">php<\/span> <span class=\"hljs-selector-tag\">artisan<\/span> <span class=\"hljs-selector-tag\">make<\/span><span class=\"hljs-selector-pseudo\">:view<\/span> <\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-15\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>e come gli diamo il nome post.blade.php e lo modifichiamo in questo modo<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-16\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\"><span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">div<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">p<\/span>&gt;<\/span>{{$posts&#91;0]-&gt;title}}<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">p<\/span>&gt;<\/span>\n    <span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">p<\/span>&gt;<\/span>{{$posts&#91;0]-&gt;content}}<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">p<\/span>&gt;<\/span>\n<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">div<\/span>&gt;<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-16\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>$posts (o la variabile che avete scelto nel controller) \u00e8 quindi \u00e8 un&#8217;array di oggetti Post in questo caso abbiamo solo un elemento che abbiamo inserito quando abbiamo caricato il seed nel database<\/p>\n\n\n\n<p>e all&#8217;indirizzo localhost:8000\/post verr\u00e0 visualizzato<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"gb-container gb-container-6da0d840\">\n\n<p>New<\/p>\n\n\n\n<p>Lorem ipsum dolor sit, amet consectetur adipisicing elit. Est eligendi atque voluptatem modi maiores reprehenderit iure ipsum mollitia exercitationem dolore perferendis facere dolor, expedita eaque excepturi reiciendis ullam hic. Dolore.<\/p>\n\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-conclusione\">Conclusione<\/h2>\n\n\n\n<p>Queste nozioni rappresentano la base per iniziare a lavorare con Laravel, un framework molto vasto.<br>In articoli successivi si possono approfondire:<br>\u2981 L\u2019uso di Blade.<br>\u2981 I controller per realizzare CRUD.<br>\u2981 L\u2019esposizione di API REST (Representational State Transfer Application Programming Interface).<\/p>\n<\/div><\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Laravel \u00e8 uno dei framework PHP pi\u00f9 diffusi e apprezzati per la sua semplicit\u00e0 e potenza. Nato nel 2011 da Taylor Otwell e basato su architettura MVC, offre strumenti moderni per lo sviluppo backend, dalla gestione del database con migration e seeder fino al rendering delle view con Blade o framework JavaScript come React e Vue. In questo articolo vedremo come creare un progetto Laravel da zero, configurare l\u2019ambiente, avviare il server di sviluppo e realizzare i primi componenti: un percorso pratico per iniziare a sfruttare le potenzialit\u00e0 di un ecosistema che continua a evolversi e a supportare milioni di sviluppatori nel mondo.<\/p>\n","protected":false},"author":240,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[10263,10019],"tags":[12854,10329,11564,13062],"collections":[],"class_list":{"0":"post-34496","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-backend-it","7":"category-uncategorized-it","8":"tag-backend-it","9":"tag-framework","10":"tag-open-source-it","11":"tag-php-it","12":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Laravel Getting started - Codemotion Magazine<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Laravel Getting started\" \/>\n<meta property=\"og:description\" content=\"Laravel \u00e8 uno dei framework PHP pi\u00f9 diffusi e apprezzati per la sua semplicit\u00e0 e potenza. Nato nel 2011 da Taylor Otwell e basato su architettura MVC, offre strumenti moderni per lo sviluppo backend, dalla gestione del database con migration e seeder fino al rendering delle view con Blade o framework JavaScript come React e Vue. In questo articolo vedremo come creare un progetto Laravel da zero, configurare l\u2019ambiente, avviare il server di sviluppo e realizzare i primi componenti: un percorso pratico per iniziare a sfruttare le potenzialit\u00e0 di un ecosistema che continua a evolversi e a supportare milioni di sviluppatori nel mondo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-26T07:41:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-26T07:41:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\" \/>\n<meta name=\"author\" content=\"Manuel della Gala\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Manuel della Gala\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\"},\"author\":{\"name\":\"Manuel della Gala\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016\"},\"headline\":\"Laravel Getting started\",\"datePublished\":\"2026-01-26T07:41:17+00:00\",\"dateModified\":\"2026-01-26T07:41:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\"},\"wordCount\":867,\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\",\"keywords\":[\"Backend\",\"Framework\",\"OpenSource\",\"PHP\"],\"articleSection\":[\"Backend\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\",\"name\":\"Laravel Getting started - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\",\"datePublished\":\"2026-01-26T07:41:17+00:00\",\"dateModified\":\"2026-01-26T07:41:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage\",\"url\":\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\",\"contentUrl\":\"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Backend\",\"item\":\"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Laravel Getting started\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#website\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Codemotion.Italy\/\",\"https:\/\/x.com\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016\",\"name\":\"Manuel della Gala\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png\",\"contentUrl\":\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png\",\"caption\":\"Manuel della Gala\"},\"sameAs\":[\"http:\/\/www.manueldellagala.it\",\"https:\/\/www.linkedin.com\/in\/manuel-dellagala\/\"],\"url\":\"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Laravel Getting started - Codemotion Magazine","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/","og_locale":"en_US","og_type":"article","og_title":"Laravel Getting started","og_description":"Laravel \u00e8 uno dei framework PHP pi\u00f9 diffusi e apprezzati per la sua semplicit\u00e0 e potenza. Nato nel 2011 da Taylor Otwell e basato su architettura MVC, offre strumenti moderni per lo sviluppo backend, dalla gestione del database con migration e seeder fino al rendering delle view con Blade o framework JavaScript come React e Vue. In questo articolo vedremo come creare un progetto Laravel da zero, configurare l\u2019ambiente, avviare il server di sviluppo e realizzare i primi componenti: un percorso pratico per iniziare a sfruttare le potenzialit\u00e0 di un ecosistema che continua a evolversi e a supportare milioni di sviluppatori nel mondo.","og_url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2026-01-26T07:41:17+00:00","article_modified_time":"2026-01-26T07:41:19+00:00","og_image":[{"url":"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png","type":"","width":"","height":""}],"author":"Manuel della Gala","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Manuel della Gala","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/"},"author":{"name":"Manuel della Gala","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016"},"headline":"Laravel Getting started","datePublished":"2026-01-26T07:41:17+00:00","dateModified":"2026-01-26T07:41:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/"},"wordCount":867,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage"},"thumbnailUrl":"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png","keywords":["Backend","Framework","OpenSource","PHP"],"articleSection":["Backend"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/","url":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/","name":"Laravel Getting started - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage"},"thumbnailUrl":"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png","datePublished":"2026-01-26T07:41:17+00:00","dateModified":"2026-01-26T07:41:19+00:00","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#primaryimage","url":"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png","contentUrl":"https:\/\/manueldellagala.it\/codemotion\/img\/laravel1\/installer.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/laravel-getting-started\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Backend","item":"https:\/\/www.codemotion.com\/magazine\/it\/backend-it\/"},{"@type":"ListItem","position":3,"name":"Laravel Getting started"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/20c1f29275c0608535c0deb6f6a88016","name":"Manuel della Gala","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/01\/fototessera-100x100.png","caption":"Manuel della Gala"},"sameAs":["http:\/\/www.manueldellagala.it","https:\/\/www.linkedin.com\/in\/manuel-dellagala\/"],"url":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"}]}},"featured_image_src":null,"featured_image_src_square":null,"author_info":{"display_name":"Manuel della Gala","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"small-home-featured":false,"sidebar-featured":false,"genesis-singular-images":false,"archive-featured":false,"gb-block-post-grid-landscape":false,"gb-block-post-grid-square":false},"uagb_author_info":{"display_name":"Manuel della Gala","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/manuel-dellagalagmail-com\/"},"uagb_comment_info":0,"uagb_excerpt":"Laravel \u00e8 uno dei framework PHP pi\u00f9 diffusi e apprezzati per la sua semplicit\u00e0 e potenza. Nato nel 2011 da Taylor Otwell e basato su architettura MVC, offre strumenti moderni per lo sviluppo backend, dalla gestione del database con migration e seeder fino al rendering delle view con Blade o framework JavaScript come React e&hellip;","lang":"it","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34496","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/240"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=34496"}],"version-history":[{"count":3,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34496\/revisions"}],"predecessor-version":[{"id":34888,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/34496\/revisions\/34888"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=34496"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=34496"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=34496"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=34496"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}