Php 使用drupal动态选择框

Php 使用drupal动态选择框,php,drupal-7,Php,Drupal 7,我试图在Drupal7中创建几个下拉列表,我有一系列与特定沙盒相关的任务。用户选择沙箱并获得一个包含该沙箱任务的选择,然后再次选择该沙箱 Dependent下拉列表需要将每个任务放在一个数组中,然后是所有这些数组,这里是硬代码版本 $optionsB = array( t('level 1') => drupal_map_assoc(doTasksQuery('level 1')), t('level 2') => drupal_map_assoc(doTasksQuery('lev

我试图在Drupal7中创建几个下拉列表,我有一系列与特定沙盒相关的任务。用户选择沙箱并获得一个包含该沙箱任务的选择,然后再次选择该沙箱

Dependent下拉列表需要将每个任务放在一个数组中,然后是所有这些数组,这里是硬代码版本

$optionsB = array(
t('level 1') => drupal_map_assoc(doTasksQuery('level 1')),
t('level 2') => drupal_map_assoc(doTasksQuery('level 2')),
t('level 3') => drupal_map_assoc(doTasksQuery('level 3')),
))

doTasksQuery()使用drupals db_query()返回每个级别的任务列表

如何使此动态化以允许可变的级别?事实上,它们是固定的。我还有另一个方法返回级别名称,它返回一个php关联数组,我宁愿使用它来填充键值,而不是硬编码键值


如果您在数组$levels中有级别名称,感谢您查看

$optionsB = array();
foreach ( $levels as $level ) {
    $optionsB[ t( $level ) ] = drupal_map_assoc( doTasksQuery( $level ) );
}