【问题标题】:iterate through range of numbers to add as keys遍历数字范围以添加为键
【发布时间】:2010-02-26 11:41:59
【问题描述】:

我有 67 个数字范围,从 256 到 323,我想将它们添加到现有数组中。值是什么并不重要。

寻找代码来遍历这些数字,将它们作为键添加到数组中,而不是一次添加一个

【问题讨论】:

  • 值是什么并不重要你的意思是“它们确实存在但对问题并不重要”或“它们不存在并且你不在乎它们是什么”将会”?换句话说,这是将数组的一个子集合并到另一个数组中,还是用键填充数组?

标签: php arrays key


【解决方案1】:

试试array_fill_keysrange

$existingArray =  array('foo', 'bar', 'baz');
$existingArray += array_fill_keys(range(256,323), null);

使用任何你喜欢的东西来代替null。你也可以使用array_flip() 代替array_fill_keys()。然后,您将索引键作为值,例如256 => 1、257 => 2 等等。

或者,使用array_merge 代替+ 运算符。 Depends on the outcome you want.

【讨论】:

    【解决方案2】:

    您可以使用range() 例如range(256,323)

    【讨论】:

      【解决方案3】:

      推();可能值得一看,或者你可以做到 像这样

      for($i=0;$i<count($array);$i++)
      {
      $anotherArray[$i] = $array[$i];
      
      }
      

      【讨论】:

        【解决方案4】:

        您可以尝试使用rangearray_merge 函数。

        类似:

        <?php
        
        $arr = array(1,2,3); // existing array.
        $new_ele = range(256,323); 
        
        // add the new elements to the array.
        $arr= array_merge($arr,$new_ele); 
        
        var_dump($arr);
        
        ?>
        

        【讨论】:

        • 这不会将值添加为键。
        猜你喜欢
        • 2020-03-15
        • 1970-01-01
        • 1970-01-01
        • 2012-11-16
        • 2018-04-07
        • 2017-03-26
        • 1970-01-01
        • 2022-08-17
        • 1970-01-01
        相关资源
        最近更新 更多