簡體   English   中英

可以從數組中的值創建 PHP 關聯數組中項的值嗎?

[英]Can the value of an item in a PHP associative array be created from values in the array?

我有一個 config.php 作為 web 項目的一部分,該項目包括一個多維關聯數組。

$config = array(
    "db" => array(
        "server" => "localhost",
        "name" => "mydb",
        "user" => "user",
        "pwd" => "password"
    ),
    "urls" => array(
        "base_url" => "http://localhost/"
    ),
    # Omitted for brevity
);

在“db”數組下,我想包含一個名為“dsn”的鍵,它是在數組本身中定義的 PDO DSN 字符串。 我設法做到這一點的唯一方法是單獨定義它:

$config['db']['dsn'] = 'mysql:host=' . $config['db']['server'] . ';dbname=' .  $config['db']['name'] . ';port=3306';

無論如何這可以在數組本身中定義,如下所示?

...
"db" => array(
    "server" => "localhost",
    "name" => "mydb",
    "user" => "user",
    "pwd" => "password"
    "dsn" => #(some value here that uses "server" and "name")
),
...

如果您希望在更改$config時更新數組dsn ,那么您可以使用 class 和魔術方法ArrayAccess接口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM