【问题标题】:how to remove array inside array如何删除数组内的数组
【发布时间】:2020-02-06 06:07:30
【问题描述】:

我在这个结构中有数组,我想从数组中删除item[6]

我在 php 中使用了unset($arrayname[6]),但它不起作用。有什么帮助吗?有什么方法可以从数组中删除元素 [6]?

 array(2) {
            [6]=>
            array(2) {
              ["id"]=>
              string(1) "1"
              ["day"]=>
              string(6) "Monday"
            }
            [7]=>
            array(2) {
              ["id"]=>
              string(1) "2"
              ["day"]=>
              string(7) "Tuesday"

            }}

【问题讨论】:

标签: php arrays unset


【解决方案1】:

您可以使用 unset() 函数从数组中删除元素,然后使用 array_values() 函数对数组进行数字索引。

$array2 = {{array of array}} // remove item at index 6 which is 'for' unset($array2[6]); // Print modified array var_dump($array2); // Re-index the array elements $arr2 = array_values($array2); //Print re-indexed array var_dump($array2);

此解决方案可行,请检查并告诉我。

【讨论】:

  • 为什么用 array_values 重新索引项目?键可能很重要。
【解决方案2】:

这正如你所期望的那样工作:

<?php
$days =
    array (
        6 => 
        array (
            'id' => 1,
            'day' => 'Mon',
        ),
        7 => 
        array (
            'id' => 2,
            'day' => 'Tue',
        )
    );

unset($days[6]);
var_export($days);

输出:

array (
  7 => 
  array (
    'id' => 2,
    'day' => 'Tue',
  ),
)

【讨论】:

    猜你喜欢
    • 2019-10-09
    • 2017-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2014-01-03
    • 1970-01-01
    • 2021-05-30
    相关资源
    最近更新 更多