将元素移动到数组中的第一个位置

时间:2016-06-17 09:18:25

标签: php arrays

这是我的数组:

Array
(
    [0] => Array
        (
            [id] => 8
            [title] => MUSIC
        )

    [1] => Array
        (
            [id] => 17
            [title] => Indie
        )

    [2] => Array
        (
            [id] => 14
            [title] => SPORTS
        )

    [3] => Array         // Need to move this on first position
        (
            [id] => 15
            [title] => Hipster  
        )

    [4] => Array
        (
            [id] => 16
            [title] => Web Seriesdf
        )
   )

我希望带有键[3]的数组位于第一个位置,然后是其余元素。 我试过array_merge和array_unshift。但是没有工作

5 个答案:

答案 0 :(得分:3)

您只需要三个步骤。

- 在变量中复制 n' 数组 - 从数组中删除 n' 索引。使用unset()
- 将变量放在数组的第0个索引处。使用array_unshift()

第1步:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<select id="alpaca4" multiple="multiple" size="5" name="roles" class="alpaca-control form-control">
  <option value="1">one</option>
  <option value="2">two</option>
</select>

第2步:

$array=$mainArray[N];

第3步:

unset($mainArray[N]);

答案 1 :(得分:2)

让我们假设您的数组为$ x;

$new_value = $x[3];
unset($x[3]);
array_unshift($x,$new_value);

这将解决您的问题。

答案 2 :(得分:2)

您也可以使用array_merge

<?php
$a = [1,2,3,4,5];
$new_value = [$a[1]];
unset($a[1]);
$c = array_merge($new_value,$a);
print_r($c);

&GT;

检查输出:https://eval.in/590702

答案 3 :(得分:2)

使用

Config::getConfigVariables();

phpfiddle Previeweval.in Preview

  

注意:我在我的阵列中移动2。在您的方法中添加3

示例

$array = array('3' => $array['3']) + $array;

<强>输出

$array = array(
    '0' => array(
        'id'=>'8',
        'title'=>'MUSIC'
        ),
    '1'     => array(
        'id'=> '17',
        'title'=> 'Indie'
        ),
     '2'     => array(
        'id'=>'14',
        'title'=>'SPORTS',
        ),
     '3'     => array(
        'id'=>'14',
        'title'=>'SPORTS',
        ),
    );

$array = array('2' => $array['2']) + $array;
print_r($array);

答案 4 :(得分:1)

使用array_unshift();

请检查以下代码。

<?php
$a = Array(
    '0' => Array('id' => '8','title' => 'MUSIC'),
    '1' => Array('id' => '17','title' => 'Indie'),
    '2' => Array('id' => '14','title' => 'SPORTS'),
    '3' => Array('id' => '15','title' => 'Hipster'),
    '4' => Array('id' => '16','title' => 'Web Seriesdf')
   );
echo '<pre>';print_r($a); 
$a3 = $a['3'];
unset($a['3']);
array_unshift($a,$a3);
echo '<pre>';print_r($a);   
?>

检查输出 - https://eval.in/590723