1
$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 => 'Select Region' 作为输出数组的第一个选项。我试过了array_push。它将元素添加到数组的末尾。我该如何解决?

4

4 回答 4

4

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

要第 1 点,请使用array_slice($region_array, 0, $index);

于 2012-10-17T07:11:28.257 回答
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);
 ?>`
于 2012-10-17T07:29:31.350 回答
1
$array = array_slice($region_array, 0, $index)
array_unshift($array, 'Select Region');

阅读array_slicearray_unshift的文档

于 2012-10-17T07:09:47.260 回答
1

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

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

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

于 2012-10-17T07:35:30.180 回答