数组操作 - PHP

时间:2012-10-17 07:07:02

标签: php arrays

$region_array = array( 

                                1 => 'Region 01', 
                                2 => 'Region 02',
                                3 => 'Region 03'
        );

我正在尝试的是

array_slice($region_array, $index);& array_splice($region_array, $index);两者都没有给我所需的输出。

必需的输出是

  1. 如果传递2作为索引,则只剩下第一个两个元素。如果我通过3前三个元素应该离开。我该怎么做?

  2. 然后无论输出数组是什么,我想添加0 => '选择区域'作为输出数组的第一个选项。我试过了array_push。它将元素添加到数组的末尾。我该如何解决?

4 个答案:

答案 0 :(得分:4)

首先回答第2点,使用array_unshift - > http://us3.php.net/manual/en/function.array-unshift.php

要指向#1,请使用array_slice($region_array, 0, $index);

答案 1 :(得分:3)

`<?php 
    $region_array = array( 
        1 => 'Region 01', 
        2 => 'Region 02',
        3 => 'Region 03'
    );
    $array = array_slice($region_array, 0, 2);
    array_unshift($array, 'Select Region');
    echo '<pre>';
    print_r($array);
 ?>`

答案 2 :(得分:1)

$array = array_slice($region_array, 0, $index)
array_unshift($array, 'Select Region');

阅读array_slicearray_unshift

的文档

答案 3 :(得分:1)

由于你的数组索引大于零,你也可以使用这个单行:

$result = array('Select region') + array_slice($region_array, 0, $index, true);

+运算符处理数组并连接第二个数组(只有键与第一个数组不相交的项目)。