支持多个数据源(DBAL)

时间:2019-07-16 16:12:27

标签: doctrine-orm architecture doctrine symfony4 solid-principles

我正在编写一个API以列出用户。用户必须从csv或mysql数据源获取。我打算像DBAL一样抽象它。但是在互联网上找不到任何合适的解决方案。我正在使用Symfony。到目前为止,我的想法在下面给出(伪代码)。

interface IDatasourceRepository {
 getUsers()
}

class CsvDatasourceRepository implements IDatasourceRepository {
 getUsers() {
   // open file 
   // loop through it
   // return array
 }
}
class MySqlDatasourceRepository implements IDatasourceRepository {

 public __construct(Connection $connevtion) {
    $this->connection = $connevtion
  }
 getUsers() {

   return $this->connection->fetchAll();
 }
}

这将是正确的解决方案吗?请引导我正确的方法。是否有可能将教义用于csv抽象。这样我就可以将pdo_mysql配置更改为csv。

0 个答案:

没有答案