{"id":23836,"date":"2021-05-06T17:56:00","date_gmt":"2021-05-06T14:56:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=23836"},"modified":"2021-10-18T03:18:03","modified_gmt":"2021-10-18T00:18:03","slug":"come-eseguire-il-seeding-del-database-utilizzando-la-libreria-php-faker","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/come-eseguire-il-seeding-del-database-utilizzando-la-libreria-php-faker\/","title":{"rendered":"Come eseguire il seeding del database utilizzando la libreria PHP Faker"},"content":{"rendered":"<p>Hai sviluppato un&#8217;applicazione. Hai creato un database per il tuo sito web. Ora, per testare la tua applicazione hai bisogno di una sorta di dati falsi. Ovviamente, sorge la domanda: esiste uno strumento di generazione di dati falsi disponibile online che pu\u00f2 seminare tabelle nel database?<\/p>\n<p><a href=\"https:\/\/github.com\/fzaninotto\/Faker\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Faker<\/a> \u00e8 una libreria PHP che genera dati falsi per la tua applicazione.<\/p>\n<p>La compilazione manuale dei dati nel database \u00e8 un processo che richiede tempo. Come sviluppatore, non dovremmo eseguire questo processo manualmente. Siamo uno sviluppatore e piuttosto avanti, quindi dovremmo sempre preferire strumenti automatizzati per svolgere i nostri compiti.<\/p>\n<p>Utilizzando la libreria Faker possiamo inserire tonnellate di dati fittizi nel nostro database in pochi secondi. Tutto ci\u00f2 che dobbiamo fare \u00e8 generare dati fittizi come e-mail false, nomi falsi, ecc. tramite Faker Formatters.<\/p>\n<p>Detto questo, vediamo la guida passo passo sull&#8217;uso della libreria Faker.<\/p>\n<h3>Installazione<\/h3>\n<p>Il modo consigliato per installare la libreria Faker \u00e8 tramite Composer. Se non hai installato Composer sul tuo computer, puoi scaricarlo da <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">qui<\/a>.<\/p>\n<p>Apri il terminale nella directory principale del tuo progetto ed esegui il comando seguente:<\/p>\n<pre><code>composer require fzaninotto\/faker<\/code><\/pre>\n<p>Successivamente, dobbiamo generare dati fittizi per la nostra tabella di database. Diciamo che abbiamo una tabella chiamata &quot;utenti&quot; e contiene colonne come nome completo, email, password, create_at. E dobbiamo inserire dati falsi nella tabella &quot;utenti&quot;.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20732-6082211d8b20a.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20732-6082211d8b20a.png\" alt=\"Come eseguire il seeding del database utilizzando la libreria PHP Faker\" ><\/a><\/p>\n<h3>Codice per database di semi<\/h3>\n<p>Poich\u00e9 dobbiamo inserire dati falsi nel nostro database, dobbiamo prima connettere il nostro database.<\/p>\n<p>Per questo articolo, supponiamo che tu stia utilizzando il core PHP, quindi scriviamo un codice per la connessione al database e le query di conseguenza. Se stai usando qualsiasi Framework o CMS, il tuo codice sar\u00e0 leggermente diverso ma la logica sarebbe la stessa.<\/p>\n<p>Crea il file seed.php nella directory principale del tuo progetto e inserisci il codice sottostante.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\n$conn = mysqli_connect(\"localhost\", \"root\", \"\", \"my_database\");\n\u00a0\n$faker = FakerFactory::create();\n\u00a0\nfor ($i=0; $i &lt; 100; $i++) { \n\u00a0\u00a0\u00a0\u00a0$sql = \"INSERT INTO users (fullname, email, password, created_at) VALUES ('\". $faker-&gt;name. \"', '\". $faker-&gt;email. \"', '\". md5($faker-&gt;password). \"', '\". date('Y-m-d H:i:s', strtotime($faker-&gt;iso8601)). \"' )\";\n\u00a0\u00a0\u00a0\u00a0mysqli_query($conn, $sql);\n}\n?&gt;<\/code><\/pre>\n<p>Il codice sopra inserir\u00e0 100 voci false nella tabella &quot;utenti&quot; del database &quot;mio_database&quot;.<\/p>\n<p>Nel nostro codice, abbiamo utilizzato i provider Faker come nome, e-mail, password e iso8601. C&#8217;\u00e8 un certo numero di altri fornitori che possiamo usare nella libreria Faker.<\/p>\n<h3>Come funzionano i fornitori di falsi?<\/h3>\n<p>Nella pagina github della <a href=\"https:\/\/github.com\/fzaninotto\/Faker\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">libreria Faker<\/a>, sotto Formatters vedrai l&#8217;elenco dei provider.<\/p>\n<p>Facciamo un esempio di <code>FakerProviderLorem<\/code>provider. Questo provider ha alcuni formattatori come una parola, paragrafi, ecc., come mostrato nell&#8217;immagine sottostante.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20732-6082211e13827.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20732-6082211e13827.png\" alt=\"Come eseguire il seeding del database utilizzando la libreria PHP Faker\" ><\/a><\/p>\n<p>Ad esempio, prendiamo uno scenario in cui \u00e8 necessario generare una frase fittizia. Quindi, usando faker, lo facciamo come segue.<\/p>\n<pre><code>&lt;?php\n$faker = FakerFactory::create();\necho $faker-&gt;sentence;\n?&gt;<\/code><\/pre>\n<p>Ci d\u00e0 una frase che contiene 6 parole. Questo perch\u00e9 la frase del metodo ha il primo parametro con un valore predefinito di 6. Se abbiamo bisogno di una frase con 20 parole, il nostro codice sar\u00e0 il seguente.<\/p>\n<pre><code>&lt;?php\n$faker = FakerFactory::create();\necho $faker-&gt;sentence(20);\n?&gt;<\/code><\/pre>\n<p>Il codice sopra dar\u00e0 una frase con 20 parole.<\/p>\n<p>Ecco come funzionano i formattatori nella libreria Faker. Puoi usare altri formattatori secondo le tue esigenze o secondo le tue strutture di tabella.<\/p>\n<p>Ci auguriamo che tu capisca come eseguire il seeding del database utilizzando la libreria Faker in PHP. Ci piacerebbe sentire i tuoi pensieri nella sezione commenti qui sotto.<\/p>\n<h4>articoli Correlati<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/accesso-social-in-php-utilizzando-la-libreria-hybridauth\/\" title=\"Accesso social in PHP utilizzando la libreria HybridAuth\">Accesso social in PHP utilizzando la libreria HybridAuth<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/kickbox-una-libreria-di-verifica-e-mail-in-tempo-reale-per-php\/\" title=\"Kickbox: una libreria di verifica e-mail in tempo reale per PHP\">Kickbox: una libreria di verifica e-mail in tempo reale per PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/invia-e-mail-utilizzando-il-server-smtp-di-gmail-dallo-script-php\/\" title=\"Invia e-mail utilizzando il server SMTP di Gmail dallo script PHP\">Invia e-mail utilizzando il server SMTP di Gmail dallo script PHP<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Stai cercando il tuo database di semi? In questo articolo, ti mostriamo come inserire tonnellate di dati falsi in un attimo nel tuo database.<\/p>\n","protected":false},"author":1,"featured_media":20733,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[276],"tags":[846],"class_list":["post-23836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-7","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/23836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/comments?post=23836"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/23836\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/20733"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=23836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=23836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=23836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}