微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何删除数组的第一个元素而不改变它的键值?

我有一个数组在PHP
<?PHP
$array=array("a"=>"123","b"=>"234","c"=>"345");
array_shift($array);
//array("0"=>"234","1"=>"345");
?>

如果我使用此功能,则键值将被更改.我希望我的关键价值保持不变.如何删除一个元素而不影响数组键值.
我的答案应该是

array("b"=>"234","c"=>"345");

注意:请不要使用foreach();我想通过PHP中现有的数组函数来做到这一点

array_splice函数适用于上述数组.但请考虑以下数组

<?PHP
$array = Array
(
    '39' => Array
        (
            'id' => '39','field_id' => '620'

        ),'40' => Array
        (
            'id' => '40','field_id' => '620','default_value' => 'rrr',));

array_splice($array,1);
print_r($array);
?>

显示如下答案:

Array ( [0] => Array ( [id] => 40 [field_id] => 620 [default_value] => rrr ) )

我可以知道原因吗array_splice()是否只适用于单维数组?现在键值重置…

如果你不知道第一项的关键是什么:
// Make sure to reset the array's current index
reset($array);

$key = key($array);
unset($array[$key]);

原文地址:https://www.jb51.cc/php/140162.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐