这是我的数组:
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。但是没有工作
答案 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;
答案 3 :(得分:2)
使用强>
Config::getConfigVariables();
phpfiddle Preview和eval.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