首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Magento中动态加载配置参数?

问如何在Magento中动态加载配置参数?
EN

Stack Overflow用户
提问于 2014-12-06 01:05:40
回答 2查看 373关注 0票数 0

我在Magento中有一个自定义模块,带有一些系统配置字段,用于连接的经典数据库参数(主机、用户、通行证、数据库名称)。我成功地连接到外部数据库(link),但我必须使用静态参数,如:

代码语言:javascript
复制
<phplist_database>
    <connection>
        <host><![CDATA[localhost]]></host>
        <username><![CDATA[root]]></username>
        <password><![CDATA[root]]></password>
        <dbname><![CDATA[phplist]]></dbname>
        <model>mysql4</model>
        <type>pdo_mysql</type>
        <active>1</active>
    </connection>

​

如何从system\config参数加载数据库参数连接?

EN

回答 2

Stack Overflow用户

发布于 2014-12-06 01:12:15

代码语言:javascript
复制
<?php
    $app = Mage::app('default');
    $config  = Mage::getConfig()->getResourceConnectionConfig("default_setup");
    $dbinfo = array('host' => $config->host,
                'user' => $config->username,
                'pass' => $config->password,
                'dbname' => $config->dbname
    );

    $hostname = $dbinfo['host'];
    $user     = $dbinfo['user'];
    $password = $dbinfo['pass'];
    $bank     = $dbinfo['dbname'];
?>
票数 0
EN

Stack Overflow用户

发布于 2019-06-04 09:54:18

您可以通过resource动态设置数据库连接。

代码语言:javascript
复制
$resource = Mage::getSingleton('core/resource');
$resource->createConnection('phplist_database', 'pdo_mysql', array(
    'host'     => Mage::helper('config')->getHost(),
    'username' => Mage::helper('config')->getUsername(),
    'password' => Mage::helper('config')->getPassword(),
    'dbname'   => Mage::helper('config')->getDbName(),
    'initStatements' => 'SET NAMES utf8',
    'type'     => 'pdo_mysql',
    'model'    => 'mysql4',
    'active'   => '1',
    'charset'  => 'utf8'
));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27321090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档