-2

在我收到冰雹之前,请相信我——我已经用谷歌搜索并使用了 SO 搜索。

如何按名称选择数组值?

如果我想调用特定值(用于数据库连接),我将如何在此处执行此操作?以下是基于 PHP 的 CMS 站点的 config 文件夹中的 database.php 文件。

我想为 mysqli 查询创建连接

$db_connection = @mysqli_connect(host,user,pass,database)

下面的代码存在于站点配置文件夹 config/database.php 中的一个单独文件中。

$config['default'] = array(
        'benchmark' => TRUE,
        'persistent' => FALSE,
        'connection' => array(
            'type' => 'mysqli',
            'user' => 'myname',
            'pass' => 'somepass123',
            'host' => 'localhost',
            'port' => FALSE,
            'socket' => FALSE,
            'database' => 'local_sitename',
        ),
        'character_set' => 'utf8',
        'table_prefix' => '',
        'object' => TRUE,
        'cache' => FALSE,
        'escape' => TRUE
    );

互联网和我的教科书充满了这样的例子:http: //www.homeandlearn.co.uk/php/php6p3.html

例如,其中是一个 seasons 数组:

<?php

$seasons = array("Autumn", "Winter", "Spring", "Summer");
print $seasons[0];

?>

我知道我可以选择说 Spring 通过使用$seasons[2];

但是在我的站点配置文件中使用数组会使用数组中的数组。我需要类似的东西(这在语法上是错误的,但我希望传达我需要的东西)

$db_connection = $config(connection(host)),$config(connection(user)),$config(connection(pass)),$config(connection(database))

我该如何称呼这些价值观?

4

2 回答 2

1

使用字符串按键索引您的数组:

$config['default']['connection']['host'];// === 'localhost'
于 2013-08-20T16:57:24.460 回答
1
$config['default'] = array(
        'benchmark' => TRUE,
        'persistent' => FALSE,
        'connection' => array(
            'type' => 'mysqli',
            'user' => 'myname',
            'pass' => 'somepass123',
            'host' => 'localhost',
            'port' => FALSE,
            'socket' => FALSE,
            'database' => 'local_sitename',
        ),
        'character_set' => 'utf8',
        'table_prefix' => '',
        'object' => TRUE,
        'cache' => FALSE,
        'escape' => TRUE
    );


echo $config['default']['connection']['user'] // prints myname
echo $config['default']['connection']['pass'] // prints pass
echo $config['default']['connection']['host'] // prints host
于 2013-08-20T16:58:15.477 回答