Php 在“多选”下拉列表中设置多个默认选定值
更新代码:Php 在“多选”下拉列表中设置多个默认选定值,php,mysql,arrays,codeigniter,select,Php,Mysql,Arrays,Codeigniter,Select,更新代码: Array ( [0] => stdClass Object ( [series_id] => 4 ) [1] => stdClass Object ( [series_id] => 16 ) [2] => stdClass Object ( [series_id] => 19 ) ) foreach($serieslist作为$list){ $data['serieslist'].='.$list->title'; } 上述更新的代码无效。您
Array ( [0] => stdClass Object ( [series_id] => 4 ) [1] => stdClass Object ( [series_id] => 16 ) [2] => stdClass Object ( [series_id] => 19 ) )
foreach($serieslist作为$list){
$data['serieslist'].='.$list->title';
}
上述更新的代码无效。您将
$list->id
与第一个$series\u item\u id:$series\u item\u id[0]->series\u id进行比较
您需要将其他foreach
放在现有的一个中:
foreach ($serieslist as $list) {
$data['serieslist'] .= '<option value="' . $list->id . '" ' . (in_array($list->id, $series_item_id, TRUE) ? 'selected="selected"' : '') . '>' . $list->title . '</option>';
}
为什么不在数组()中使用
调用而不是foreach
?打印($series\u item\u id)的结果是什么代码>?请根据我的代码提供in_array()的示例?打印结果是数组([0]=>stdClass对象([series\u id]=>4)[1]=>stdClass对象([series\u id]=>16)[2]=>stdClass对象([series\u id]=>19)),请查看有问题的更新代码。在\u数组()中尝试,与任何一个都没有区别$series\u item\u id是一个对象数组,$list->id是一个整数,因此直接比较它们的AFAIK将失败,特别是启用了严格比较的情况下
Array ( [0] => stdClass Object ( [series_id] => 4 ) [1] => stdClass Object ( [series_id] => 16 ) [2] => stdClass Object ( [series_id] => 19 ) )
foreach ($serieslist as $list) {
$data['serieslist'] .= '<option value="' . $list->id . '" ' . (in_array($list->id, $series_item_id, TRUE) ? 'selected="selected"' : '') . '>' . $list->title . '</option>';
}
foreach ($serieslist as $list) {
foreach ($series_item_id as $series_item) {
$data['serieslist'] .= '<option value="' . $list->id . '" ' . ($series_item->series_id === $list->id ? 'selected="selected"' : '') . '>' . $list->title . '</option>';
}
}
$series_array = array();
foreach ($series_item_id as $series_item) {
$series_array[] = $series_item->series_id;
}
foreach ($serieslist as $list) {
$data['serieslist'] .= '<option value="' . $list->id . '" ' . (in_array($series_array, $list->id) ? 'selected="selected"' : '') . '>' . $list->title . '</option>';
}