首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不重置数组键的情况下移动第一个数组元素并生成新的数组

如何在不重置数组键的情况下移动第一个数组元素并生成新的数组
EN

Stack Overflow用户
提问于 2015-12-16 20:20:29
回答 2查看 120关注 0票数 0

下面是我的PHP代码,没有out:

代码语言:javascript
复制
<?php
$stack = array( 0 => array("orange", "banana", "apple", "raspberry"),1 => array("banana", "apple", "raspberry"),2 => array("apple", "raspberry"),'a' => array("raspberry"));

$temp = array_keys($stack);
array_shift($temp);

foreach($temp as $item){
    $dd[$item] = $stack[$item];
}
print_r($dd);
?>

产出如下:

代码语言:javascript
复制
Array
(
    [1] => Array
        (
            [0] => banana
            [1] => apple
            [2] => raspberry
        )

    [2] => Array
        (
            [0] => apple
            [1] => raspberry
        )

    [a] => Array
        (
            [0] => raspberry
        )

)

但是,当循环通过我打印数组时,第一个元素丢失了。它应该在数组列表中.

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-16 20:33:26

检查此代码,它将首先移位数组,最后添加数组,而不需要重置数组键:

我希望这对你有用..。

代码语言:javascript
复制
<?php

$stack = array( 0 => array("orange", "banana", "apple", "raspberry"),1 => array("banana", "apple", "raspberry"),2 => array("apple", "raspberry"),'a' => array("raspberry"));

$temp = array_keys($stack);
$tem = array_shift($temp);
$temp[] = $tem;
$dd = array();

foreach($temp as $item){
    $dd[$item] = $stack[$item];
}

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

产出:

阵列(1 =>阵列( =>香蕉1 =>苹果2 =>覆盆子) 2 =>阵列( =>苹果1 =>覆盆子) =>阵列( => raspberry ) =>阵列( =>橙1 =>香蕉2 => apple 3 => raspberry ) )

票数 0
EN

Stack Overflow用户

发布于 2015-12-16 20:22:25

如果您只是想获取数组中第一个元素的值(而不删除它),请使用reset($stack)

array_shift()将从数组中移除元素并返回值。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34321333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档