【问题标题】:Drupal get a value of a select list not a keys?Drupal获取选择列表的值而不是键?
【发布时间】:2018-02-19 13:21:09
【问题描述】:

如何获得一个字段的所有选项?

例如,在允许值中有一个包含 3 个选项的字段,例如 option1、option2、option3。是否有任何函数可以接收字段名称并返回所选值而不是键?

有了这个只是选择意见的返回键

  print ($node->field_opinion['und'][0]['value'])

【问题讨论】:

  • 您是否尝试过类似 print_r($node->field_option) 的方法来查看某个字段是否包含这些值?
  • 是结果:数组([und] => 数组([0] => 数组([value] => 1)))
  • 是的,但除此之外 [und][0][value]...还有什么有用的吗?
  • @MilanG 没有“1”只是字段键!

标签: php drupal drupal-7 field


【解决方案1】:

您可以使用 list_allowed_values 函数来做到这一点:

$key = $node->field_opinion['und'][0]['value'];
$options = list_allowed_values('field_opinion');
$label = $options[$key];

【讨论】:

    【解决方案2】:

    接受的答案不适用于我的用例,我必须执行以下操作:

    $key = // db_select('node'...
    $field_definition = field_info_field('field_name');
    $options = list_allowed_values(field_definition, 'node');
    $label = $options[$key];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-06
      • 1970-01-01
      • 2015-12-16
      相关资源
      最近更新 更多