0

我在 Symfony 1.4 项目中的 mysql 数据库中添加了一个新表。我想在不使用 Doctrine 的情况下使用新表,但我看到的所有示例都指的Doctrine_Manager::connection()是获取数据库连接。

我可以在没有的情况下获得数据库连接Doctrine_Manager::connection()吗?

我也想使用普通的 sql 语句,但我认为它们必须是 PDO 语句。

4

1 回答 1

1

好吧,如果您不想使用学说来检索连接,则必须从 中检索信息database.yml并使用 PDO 将自己连接到数据库。

如果你databases.yml是这样的:

all:
  doctrine:
    class: sfDoctrineDatabase
    param:
      dsn: 'mysql:dbname=testdb;host=127.0.0.1'
      username: dbuser
      password: dbpass

您可以使用以下代码段创建新的 PDO 连接:

// create the connection
$yml    = sfYaml::load(sfConfig::get('sf_config_dir').'/databases.yml');
$params = $yml['all']['doctrine']['param'];
$dbh    = new PDO($params['dsn'], $params['username'], $params['password']);

// perform your query
$statement = $dbh->prepare($query);
$statement->execute();
$results = $statement->fetchAll();
于 2012-10-12T07:58:43.890 回答