ckuran / doctrine4legacy
为旧版应用程序提供的简单Doctrine包装器。
v1.0.12
2020-05-29 11:28 UTC
Requires
- php: ^5.6 || ^7.0 || ^7.1 || ^7.2
- beberlei/doctrineextensions: ^1.1 || ^1.2
- doctrine/data-fixtures: ^1.3 || ^1.4
- doctrine/orm: ^2.5 || ^2.6 || ^2.7
- symfony/dotenv: ^3.4 || ^4.4 || ^5.0
README
为旧版应用程序同时提供Doctrine的DBAL和ORM的简单包装器。
每天我都要与基于自定义框架的PHP 5.6单体应用程序打交道。如果你在Symfony框架中接触过Doctrine,那么你可能知道Doctrine的EntityManager如何通过简化一切来使日常开发工作更加轻松。
这个库提供了一种简单的包装器,这样你就可以专注于开发你的旧版应用程序——但同时也享受Doctrine技术的优势。如果你厌倦了自定义框架的数据库抽象级别,请使用它。不再有废弃的mysql_connect错误、通知、警告等。从Doctrine CLI开始构建你的数据库。几年后,迁移到任何其他依赖Doctrine的正确框架将会容易得多。
目前支持
- 多个数据库实例
- 从实体注解生成数据库模式
作为一个PHP开发者,我还是个新手,但请随意批评代码。
如何使用?
- 使用Composer安装
composer require ckuran/doctrine4legacy
- 将.env.dist和cli-config.php复制到您的根目录
- 将.env.dist重命名为.env
- 编辑.env文件,并通过自定义前缀提供对单个或多个数据库的访问
- 在您的脚本中创建bootstrap.php文件或在此处附近包含此代码(靠近加载composer依赖项)
define('ROOT', __DIR__ . '/'); if (file_exists(ROOT . '.env')) { $env = new Dotenv(); $env->load(ROOT . '.env'); }
- 您可以将包装器添加到bootstrap.php或在其脚本中的任何位置使用它
使用以下方法获取默认数据库
$em = DoctrineWrapper::getEntityManager(); $dbal = DoctrineWrapper::getConnection();
使用以下方法获取自定义前缀数据库
$em = DoctrineWrapper::getEntityManager('customPrefix'); $dbal = DoctrineWrapper::getConnection('customPrefix');