Як засіяти базу даних за допомогою PHP Faker Library
Ви розробили додаток. Ви створили базу даних для свого веб-сайту. Тепер для тестування вашої програми вам потрібні якісь підроблені дані. Очевидно, що виникає запитання, чи є в Інтернеті який-небудь інструмент генератора підроблених даних, який може засідати таблиці в базу даних?
Faker – це бібліотека PHP, яка генерує підроблені дані для вашого додатка.
Внесення даних у базу даних вручну – це трудомісткий процес. Як розробник, ми не повинні робити цей процес вручну. Ми розробник і досить вперед, тому нам завжди слід віддавати перевагу автоматизованим інструментам для виконання наших завдань.
Використовуючи бібліотеку Faker, ми можемо вставити в нашу базу даних безліч фіктивних даних за кілька секунд. Все, що нам потрібно зробити, – це створювати фіктивні дані, такі як фальшива електронна пошта, фальшиве ім’я тощо, за допомогою Faker Formatters.
Сказавши це, давайте подивимося покроковий посібник з використання бібліотеки Faker.
Встановлення
Рекомендований спосіб встановлення бібліотеки Faker – через Composer. Якщо ви не встановили Composer на своєму комп’ютері, ви можете завантажити його звідси.
Відкрийте термінал у кореневому каталозі проекту та запустіть наступну команду:
composer require fzaninotto/faker
Далі нам потрібно створити фіктивні дані для нашої таблиці бази даних. Скажімо, у нас є таблиця під назвою "користувачі", і вона містить такі стовпці, як повне ім’я, електронна пошта, пароль, created_at. І нам потрібно вставити підроблені дані в таблицю "користувачі".
Код для бази даних насіння
Оскільки нам потрібно вставити в нашу базу даних підроблені дані, нам спочатку потрібно підключити нашу базу даних.
У цій статті ми припускаємо, що ви використовуєте основний PHP, тому ми пишемо код для підключення до бази даних та відповідних запитів. Якщо ви використовуєте будь-яку фреймворк або CMS, ваш код трохи відрізнятиметься, але логіка буде однаковою.
Створіть файл seed.php у кореневому каталозі проекту та розмістіть у ньому код нижче.
<?php
require_once "vendor/autoload.php";
$conn = mysqli_connect("localhost", "root", "", "my_database");
$faker = FakerFactory::create();
for ($i=0; $i < 100; $i++) {
$sql = "INSERT INTO users (fullname, email, password, created_at) VALUES ('". $faker->name. "', '". $faker->email. "', '". md5($faker->password). "', '". date('Y-m-d H:i:s', strtotime($faker->iso8601)). "' )";
mysqli_query($conn, $sql);
}
?>
Наведений вище код вставить 100 підроблених записів у таблицю "користувачі" бази даних "my_database".
У нашому коді ми використовували провайдери Faker, такі як ім’я, електронна пошта, пароль та iso8601. Існує ряд інших провайдерів, якими ми можемо користуватися в бібліотеці Faker.
Як працює постачальник послуг Faker?
На сторінці github бібліотеки Faker у розділі Форматери ви побачите список постачальників.
Візьмемо приклад FakerProviderLorem
постачальника. У цього постачальника є деякі форматори, такі як слово, абзаци тощо, як показано на знімку екрана.
Як приклад, ми беремо один сценарій, коли нам потрібно сформувати фіктивне речення. Отже, використовуючи факер, ми робимо це наступним чином.
<?php
$faker = FakerFactory::create();
echo $faker->sentence;
?>
Це дає нам речення, яке містить 6 слів. Це пояснюється тим, що в реченні методу перший параметр має значення за замовчуванням 6. Якщо нам потрібне речення з 20 слів, то наш код буде наступним.
<?php
$faker = FakerFactory::create();
echo $faker->sentence(20);
?>
Наведений вище код дасть речення з 20 слів.
Ось як працюють форматування в бібліотеці Faker. Ви можете використовувати інші форматори відповідно до ваших вимог або відповідно до ваших структур таблиць.
Ми сподіваємось, ви розумієте, як засіяти базу даних за допомогою бібліотеки Faker у PHP. Ми хотіли б почути ваші думки в розділі коментарів нижче.
Статті, пов’язані з цим
- Соціальний вхід у PHP за допомогою бібліотеки HybridAuth
- Kickbox – бібліотека для перевірки електронної пошти в реальному часі для PHP
- Надіслати електронну пошту за допомогою SMTP-сервера Gmail із PHP Script