我正在尝试将值推送到关联数组的末尾。数组的基本布局(其中包含一个对象)如下所示:
Array ( [0] => Array ( [alert] => Array ( [email] => Test ) ) )
我正在对MySQL数据库进行查询并比较一些数据,当有匹配时,我正在尝试将新匹配添加到数组的末尾($ alert_array)。基本上,我希望它看起来像这样:
Array ( [0] => Array ( [alert] => Array ( [email] => Test ) ) [1] => Array ( [alert] => Array ( [email] => Test ) ) )
等等......取决于有多少场比赛。我有以下代码(这是简化的,所以在代码的早期有一些声明,但我认为它可以从你在下面看到的内容中推断出来)。你会注意到,每次匹配时我都会echo 'test'
完成“测试”。目前在代码中,有两个匹配('test'被回显两次)但是当我打印出来时,数组中只有一个对象。我的预感是数组运行,将第一个匹配添加到数组,然后在找到第二个匹配时覆盖数组。我试图在阵列的末尾'推'它。我尝试array_push($alert_array, '$alert', '$email')
而不是数组('下面的内容'),但这不起作用。谁能帮我?看起来应该很简单。谢谢!
$alert_array = array();
while($row_state_match = mysqli_fetch_array($result_state_match)){
$city = $row_state_match['city'];
$email = $row_state_match['email'];
if($city!="UNDEFINED" && $city==$alert_city){
//TEST TO SEE HOW MANY MATCHES HAPPEN
echo 'test';
//PUSH ALERT TO ARRAY
$alert_array[] = array("alert" => "
<table class='alert' width='600'>
<tr width='100%'>
<td width='50%'>
<table>
<tr>
<td>
<h1>It worked</h1>
</td>
</tr>
</table>
</td>
</tr>
</table>", "email" => $email);
}
}
答案 0 :(得分:2)
尝试像这样推动以获得所需的数组
$basearray=array ( '0' => array ( 'alert' => array ( 'email' => 'Test' ) ) );
$alertarray=array('alert'=>array('email'=>'Test2'));
array_push($basearray,$alertarray);
echo '<pre>';
print_r($basearray);
输出: -
Array
(
[0] => Array
(
[alert] => Array
(
[email] => Test
)
)
[1] => Array
(
[alert] => Array
(
[email] => Test2
)
)
)