2013-01-11 66 views
0

选择我填充一个选择框这样PHP 2个阵列

foreach ($prov->getLicences() as $licence) { 
    echo '<option value="' . $licence['id'] . '">' . $licence['licence'] . '</option>'; 
} 

这个选择框是用于编辑现有数据库条目,这样我就可以抓住这个已经选择的许可。

$prov->getSubscriberLicences($id) 

这将返回一个id数组,我如何检查这些id对上面选择框中的可用值。

如果它们匹配,我想将selected标记添加到选项值。

echo '<option selected value="' . $licence['id'] . '">' . $licence['licence'] . '</option>'; 

编辑:

请注意$prov->getSubscriberLicences($id)返回多个ID 这里的数组是一个变种转储

array(2) { [0]=> array(1) { ["id"]=> string(1) "1" } [1]=> array(1) { ["id"]=> string(1) "3" } } 

看起来像它multidementional

+0

的可能重复的[PHP多维阵列搜索](http://stackoverflow.com/questions/6661530/php-multi-dimensional-array-search) –

回答

1

作为最起码的信息给我我只能想到这一点,只是试试这个 -

$selected = (in_array($licence['id'],$prov->getSubscriberLicences($id)) ? "select" : ""); 

echo '<option '.$selected.' value="' . $licence['id'] . '">' . $licence['licence'] . '</option>'; 
+0

得到 - 解析错误:语法错误,意想不到“; “ –

+0

你正在哪一行? –

+0

@VinceLowe:我的坏,更新的第一行,没有关闭括号。 –