多维关联数组(PHP)

iyfamqjs  于 2023-03-28  发布在  PHP
关注(0)|答案(3)|浏览(109)

我是PHP中的数组新手,正在努力学习如何创建多维关联数组。当我使用print_r时,我希望数组看起来像这样:

Array ( [0] => Array ( [alert] => alert [email] => Test ) )

相反,我得到了这个:

Array ( [0] => Array ( [alert] => Array ( [email] => Test ) ) )

我使用的代码是这样的:

$alert_array = array();

$alert_array[]["alert"]["email"] = "Test";

我想尝试这样的东西会工作,但显然我的语法有点不对。我想我在正确的轨道上,虽然?:

$alert_array[][["alert"]["email"]] = "Test";

感谢您的帮助(如果这是超级基本的,我很抱歉找不到任何问题,解决这个正是)!

wj8zmpe1

wj8zmpe11#

$alert_array = array();
$alert_array[] = array('alert' => 'alert', 'email' => 'Test');
...
var_dump($alert_array);

在你的例子中,你必须像这样指定key

$alert_array[$key]["alert"] = "alert";
$alert_array[$key]["email"] = "Test";

你也必须有一个带计数器的循环。
如果你使用的是PHP 5.4+,你可以使用短数组语法:

$alert_array = [];
$alert_array[] = ['alert' => 'alert', 'email' => 'Test'];
r8uurelv

r8uurelv2#

如果使用array function将一个已经存在Array放入一个新Array中,则结果将是多维数组

$alert_array = array();
    $alert_array[] = array('alert' => 'alert', 'email' => 'Test');
    print_r($alert_array);

    /* result will be
    Array ( [0] => Array ( [alert] => alert [email] => Test ) )
    */

在这种情况下,结果将是一维数组

$alert_array = array();
while($variable = mysqli_fetch_assoc($something)) {
$alert_array[] = $variable;
}

请参阅array function

f8rj6qna

f8rj6qna3#

所有关联关系:

$alert_array = ["alert"  => ["email"  => "test"],
                "act"    => ["phone"  => "data"],
                "report" => ["pager"  => "yes" ],
                "advise" => ["letter" => "no"  ] ];

相关问题