schwarzer / laravel-mysql-to-seeder
MySQL 转 Laravel >5.1 Seeder
v0.9.3
2018-09-25 16:22 UTC
Requires
- php: >=5.6
Requires (Dev)
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2024-08-29 04:19:47 UTC
README
我需要一个工具,用于将现有 MySQL 数据库中的数据导出到 Laravel Seeder 中。我在网上搜索了它,但没有找到我想要正确的工具。我偶然发现了 namelivia/mysql-to-laravel-seed。
但是...
- ...使用了过时的函数
- ...迫使我创建一个导出模式
- ...没有创建可工作的 Seeder(缺少
use Illuminate\Database\Seeder;) - 并且 Seeder 看起来也不太美观
我决定创建一个自己的 MySQL 到 Laravel Seeder 工具版本。
兼容性
我欢迎所有有关工作环境的反馈。请给我发邮件 (info@schwarzer.it),我会把它发布在这里,或者发送一个合并请求。
简单示例
在 Laravel 根目录下创建一个名为 export.php 的文件(即你的 .env 文件所在位置),然后使用 php ./export.php 执行它。完成。
不使用 Composer 自动加载使用
<?php require_once __DIR__.'/path/to/schwarzer/laravel-mysql-to-seeder/src/Export.php'; $export = new \Schwarzer\LaravelHelper\MySQLToSeeder\Export('hostname','database','username','password',3306); $export->generateExport( null, // null equals "All Tables" ( $this->getAllTableNames() ) './database/seeds', // if null './database/seeds' is applied ['these','are','boolean','values'], ['timestamp_column','created_at', 'updated_at'], ['type','date'] );
使用 Composer 自动加载使用
<?php require __DIR__.'/vendor/autoload.php'; $export = new \Schwarzer\LaravelHelper\MySQLToSeeder\Export('hostname','database','username','password',3306); $export->generateExport( null, // null equals "All Tables" ( $this->getAllTableNames() ) './database/seeds', // if null './database/seeds' is applied ['these','are','boolean','values'], ['timestamp_column','created_at', 'updated_at'], ['type','date'] );