如果存在密钥,则将其排序为数组的最后一个元素

时间:2015-10-12 07:55:55

标签: php arrays

Array
(
    [os]  => win7
    [lang]  => eng
    [page]  => 5
    [type]  => 6
    [sex]  => 1
    [name] => mary
)

如果数组退出一个键[page]。让它成为最后一个元素

我该怎么办?

我找到了end();但不工作

3 个答案:

答案 0 :(得分:0)

试试这个:

if (isset($ar['key']))
{
    $temp = $ar['key'];
    unset($ar['key']);
    $ar['key'] = $temp;
}

答案 1 :(得分:0)

你可以这样做,

$a=Array
(
    [os]  => win7
    [lang]  => eng
    [page]  => 5
    [type]  => 6
    [sex]  => 1
    [name] => mary
);

if(isset($a['page'])){
 $val=$a['page'];   
 unset ($a['page']);
 array_push($a, $val);
}

答案 2 :(得分:0)

您可以使用array_key_exists函数检查是否存在特定密钥,如果存在则将其移至最后

<?php
$my_array = Array
(
    'os'  => 'win7',
    'lang'  => 'eng',
    'page'  => '5',
    'type'  => '6',
    'sex'  => '1',
    'name' => 'mary',
);

$key_check = 'page';

if(array_key_exists($key_check, $my_array))
{
    $tmp = $my_array[$key_check];
    unset($my_array[$key_check]);
    $my_array[$key_check] = $tmp;
}

echo "<pre>";
print_r($my_array);
?>