我想从我的数组中获取键的值:
array(2) {
[0]=>
array(14) {
["id"]=>
string(2) "64"
["name"]=>
string(9) "Freddy"
["firstname"]=>
string(7) "Lang"
}
[1]=>
array(14) {
["id"]=>
string(2) "77"
["name"]=>
string(6) "Samual"
["firstname"]=>
string(5) "Johnson"
}
}
$id = array_column($array, 'id');
$firstname = array_column($array, 'firstname');
$name = array_column($array, 'name');
echo "<select>";
echo implode('<option value ="'.$id.'"'>'.$firstname.' '.$name.'</option>);
echo "</select>";
但是我得到了一个空白页面。
答案 0 :(得分:2)
在这种情况下使用implode不是探索方式:
使用foreach:
echo '<select>';
foreach ($array as $key => $value) {
echo '<option value ="'.$value['id'].'">'.$value['firstname'].' '.$value['name'].'</option>';
}
echo '</select>';
答案 1 :(得分:1)
您可以使用array_map
将输入数组转换为<option>
然后implode
所有的html代码,只使用一个语句:
echo "<select>" . implode('', array_map(function($row) {
return '<option value="'.$row['id'].'">'. $row['firstname'] .' '. $row['name'].'</option>';
}, $array )) . "</select>";