繁体   English   中英

在Select中显示数组-FORM API Drupal

[英]Displaying Array in Select - FORM API Drupal

我想添加键(type_id)和值(type_description)以在Drupal形式的API中进行选择

$ result_x-> product_types-> RPMProductType是数据库的数组结果:-array(4){[0] => object(stdClass)#18(2){[“” type_description“] => string(10)” Calendered“ [ “ type_id”] => int(1)} [1] => object(stdClass)#19(2){[“” type_description“] => string(8)” Extruded“ [” type_id“] => int(2 )} [2] => object(stdClass)#20(2){[“” type_description“] => string(6)” Molded“ [” type_id“] => int(3)} [3] => object( stdClass)#21(2){[“” type_description“] => string(5)” Other“ [” type_id“] => int(4)}}

foreach ($result_x->product_types->RPMProductType as $data)
{

$form['manufacturer_add_new_sales']['product_type'] = array(
    '#type' => 'select',
    '#title' => t('Product Type'),
    '#options'=>array($data->type_id=>$data->type_description),
    );
}

什么时候这样做我只得到最后一个值,即其他。 如何正确循环绑定以选择显示所有数组的键-值。

先感谢您。

您需要使用值创建一个数组并使用它。

foreach ($array as $key => $value) {
  $options[$key] = $value;
}

然后,您可以使用$ options作为您的选项。

您也可以使用函数返回数组,而不用设置$ options数组的每个$ key。

'#options'=> function_options($param),
....
....
....

// Your Options populating function
function_options($param){
$optionarray = array();
// Populate array with DB values
.....
..... 
return optionarray;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM