我正在尝试将数据从数据库添加到二维数组,然后解包。
此函数位于名为 imsConnection.php
的文件夹中
function getCurrency() {
global $cn;
$sql = "select * from Currency";
$res = mysqli_query($cn, $sql);
$a = array();
if (mysqli_num_rows($res) > 0) {
while ($row = mysqli_fetch_array($res)) {
$a[] = array($row['currencyID'], $row['currencyName']);
}
}
return $a;
}
并将其解压到投递箱中:
<select name="drpCurrency" required>
<?php
require_once("imsConnection.php");
$a = getCurrency();
foreach($a as $i) {
echo "<option value='$i'>$a[$i]</option>";
}
?>
</select>
最佳答案
正式回答:如果您创建多维数组并使用 foreach
循环,您需要根据您需要的键回显该值。在你的情况下:
foreach($a as $i)
echo "<option value='" . $i["currencyID"] ."'>" . $i['currencyName'] . "</option>";
我建议您根据键更改数组 - 将 getCurrency
函数更改为:
while($row = mysqli_fetch_array($res)){
$a[$row['currencyID']] = $row['currencyName'];
然后您可以将其用作:
$a = getCurrency();
foreach($a as $k => $i)
echo "<option value='$k'>$i/option>";
假设您希望将值作为货币 ID,将选项内容作为货币名称
关于php - 向/从二维数组添加/获取数据不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55206188/