【问题标题】:Getting no array key没有得到数组键
【发布时间】:2014-03-28 08:32:06
【问题描述】:

嘿,我正在尝试在 foreach 中获取数组的键。 但是得到了这个错误 警告:array_keys() 期望参数 1 是数组,第 10 行给出的字符串

这是我的数组:

$status_de = array
(
    '1' => 'Anfrage',
    '2' => 'Angebot',
    '3' => 'Abgeschlossen'  
);

这是我的代码:

<select name="land">
    <?php foreach ($status_de as $status) {
      echo "<option value='" . array_keys($status) . "'>" . $status . "</option>";
    }
    ?>
</select>

【问题讨论】:

    标签: php foreach array-key


    【解决方案1】:

    你应该使用:

    <?php foreach ($status_de as $key=>$status) {
      echo "<option value='" . $key . "'>" . $status . "</option>";
    }
    ?>
    

    array_keys() 将返回包含 all 键的 array(因此不适用于字符串运算符)

    【讨论】:

      【解决方案2】:

      试试这个:

      foreach 循环会得到键值对,所以你可以直接使用它。不需要任何函数来获取这些。

      <select name="land">
          <?php foreach ($status_de as $key => $value) {
            echo "<option value='" . $key . "'>" . $value . "</option>";
          }
          ?>
      </select>
      

      【讨论】:

      • 请接受答案,这样其他人会得到帮助。谢谢:)
      【解决方案3】:

      您不能这样做,因为array_keys 需要一个数组。在你的场景中,你给出一个字符串。

      试试这样:

      <select name="land">
          <?php foreach ($status_de as $k =>$v) {
            echo "<option value='" . $k . "'>" . $v . "</option>";
          }
          ?>
      </select>
      

      【讨论】:

        猜你喜欢
        • 2015-05-23
        • 2013-11-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-09
        • 2013-09-05
        • 2012-03-03
        相关资源
        最近更新 更多