php - 根据数组键删除内部数组
问题描述
我有一个多维数组,我需要从数组中删除一个项目。我希望删除整个子集数组而不仅仅是一个值。我希望这样做是子集数组的关键。我已经尝试多次尝试使用循环和其他数组函数来删除它,并在堆栈中搜索但没有成功。
这是数组的一个示例。
$数组
Array (
[key1] => Array ( [title] => Title [visible] => 1 [order] => 0 )
[key2] => Array ( [title] => Title [visible] => 1 [order] => 1 )
[key3] => Array ( [title] => Title [visible] => 1 [order] => 2 )
[key4] => Array ( [title] => Title [visible] => 1 [order] => 3 )
[key5] => Array ( [title] => Title [visible] => 1 [order] => 4 )
[key6] => Array ( [title] => Title [visible] => 1 [order] => 5 )
[key7] => Array ( [title] => Title [visible] => 1 [order] => 6 )
)
我正在使用 php7
当我尝试循环时,它只会删除键,并保留其余的值。
我想删除 key4 子数组并保持其余部分完好无损。
预期输出:
Array (
[key1] => Array ( [title] => Title [visible] => 1 [order] => 0 )
[key2] => Array ( [title] => Title [visible] => 1 [order] => 1 )
[key3] => Array ( [title] => Title [visible] => 1 [order] => 2 )
[key5] => Array ( [title] => Title [visible] => 1 [order] => 4 )
[key6] => Array ( [title] => Title [visible] => 1 [order] => 5 )
[key7] => Array ( [title] => Title [visible] => 1 [order] => 6 )
)
解决方案
在此处删除数组基键
$res= Array (
'key1' => Array ( 'title' => 'Title', 'visible' => 1 ,'order' => 0 ) ,
'key2' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 1 ) ,
'key3' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 2 ) ,
'key4' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 3 ) ,
'key5' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 4 ),
'key6' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 5 ) ,
'key7' => Array ( 'title' => 'Title' ,'visible' => 1 ,'order' => 6 ) ,
);
echo "<pre>";
echo "Before Array<br>";
print_r($res);
unset($res['key4']);
echo "After Array<br>";
print_r($res);
在这里输出
数组前
Array( [key1] => Array
(
[title] => Title
[visible] => 1
[order] => 0
)
[key2] => Array
(
[title] => Title
[visible] => 1
[order] => 1
)
[key3] => Array
(
[title] => Title
[visible] => 1
[order] => 2
)
[key4] => Array
(
[title] => Title
[visible] => 1
[order] => 3
)
[key5] => Array
(
[title] => Title
[visible] => 1
[order] => 4
)
[key6] => Array
(
[title] => Title
[visible] => 1
[order] => 5
))
[key7] => Array
(
[title] => Title
[visible] => 1
[order] => 6
))
阵列后
Array([key1] => Array
(
[title] => Title
[visible] => 1
[order] => 0
)
[key2] => Array
(
[title] => Title
[visible] => 1
[order] => 1
)
[key3] => Array
(
[title] => Title
[visible] => 1
[order] => 2
)
[key5] => Array
(
[title] => Title
[visible] => 1
[order] => 4
)
[key6] => Array
(
[title] => Title
[visible] => 1
[order] => 5
)
[key7] => Array
(
[title] => Title
[visible] => 1
[order] => 6
))
推荐阅读
- html - 溢出时不出现点
- cordova - 离子科尔多瓦资源--splash错误
- .net - VS Code C# 扩展报告缺少 .NETFramework,Version v4.5
- vba - 使用 VBA 复制 sql 语句
- node.js - GULP [Browsersync] 无法打开浏览器
- swift - 在 Swift 中使用 AVAssetWriter 将 AVCaptureVideoDataOutput 保存到电影文件
- openssl - 无法访问 IMAP/POP3 gmail
- python - 将浮点数转换为数组中的整数
- c++ - 为什么g ++在动态链接时会检测到未定义的引用
- javascript - 使用 Stripe 结帐的 Bootstrap 4 表单验证