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 を渡す場合、最初の 2 つの要素のみを残す必要があります。3 番目を渡すと、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

Since your array indices are greater than zero you can use this one-liner as well:

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

The + operator works on arrays and concatenates the second array (only the items whose key doesn't intersect with the first).

于 2012-10-17T07:35:30.180 に答える
1
$array = array_slice($region_array, 0, $index)
array_unshift($array, 'Select Region');

array_slicearray_unshiftのドキュメントを読む

于 2012-10-17T07:09:47.260 に答える