【问题标题】:Rename keys in array PHP重命名数组 PHP 中的键
【发布时间】:2010-12-02 11:54:13
【问题描述】:

大家好: 我有这个数组:

$names = array('a','b','c'); foreach($names as $key => $value) { 回声$键; }

a, b, c 来自 name[] 字段

输入是:

0 1 2

有一个数组函数将输出结果替换为:

1 2 3

我想重命名第一个键,因为我会将主题插入到 mysql 表中。

【问题讨论】:

    标签: php arrays


    【解决方案1】:

    为什么要重命名?只需在需要时使用$key + 1

    【讨论】:

    • 我将使用 $key 作为 [$key] 所以我不能给它添加值。
    【解决方案2】:
    for ($i = count($names) - 1; $i >= 0; $i--) 
        $names[$i + 1] = $names[$i];
    unset($names[0]);
    

    array_unshift($names, 0); 
    unset($names[0]);
    

    只需在查询中使用 $key+1 而不是更改数组。

    【讨论】:

      【解决方案3】:

      我刚刚找到了解决办法:

      $names = array(1 => 'a','b','c'); foreach($names as $key => $value) { 回声$键; }

      【讨论】:

      • 您的解决方案与问题不符:)
      【解决方案4】:

      如果你想将 all 加 1,可能会这样:

      $names = array('a','b','c'); 
      foreach($names as $key => $value ) {
          $key = $key+1;
      }
      

      $names = array('a','b','c'); 
      foreach($names as $key => $value ) {
          if($key==1) {
              $key = $key+1;
          }
      }
      

      但第二个没有任何意义,因为它只会被第二个数组元素替换。

      【讨论】:

        猜你喜欢
        • 2012-09-16
        • 2012-03-25
        • 2014-03-19
        • 2021-05-25
        • 2020-05-28
        • 2015-12-28
        • 1970-01-01
        • 1970-01-01
        • 2015-06-09
        相关资源
        最近更新 更多