从命名的多维数组中删除一个值[关闭]
Posted
技术标签:
【中文标题】从命名的多维数组中删除一个值[关闭]【英文标题】:Remove a value frome a named multi dimension array [closed] 【发布时间】:2016-04-12 12:30:11 【问题描述】:我有一个这样的数组:
Array
(
[core.login.site] => Array
(
[6] => 1
[2] => 1
)
[core.admin] => Array
(
[20] => 1
[1] => 1
[8] => 1
[53] => 1
)
[core.manage] => Array
(
[7] => 1
)
)
现在我想取消设置数组[core.admin]
中的值。我尝试像这样取消设置值:
$rolid = 53;
unset($array['core.admin'][$rolid]);
但这似乎不起作用
【问题讨论】:
无法重现您的问题:3v4l.org/uuPRK 请确保向我们展示您的完整真实代码。 1) 您在此处向我们展示了您阵列中print_r()
的输出,对吧? 2)您需要给我们一个minimal reproducible example,以便我们重现您的问题
***.com/a/4466437/107612 可能是一个适合您需求的好答案。
我的数组的 print_r 看起来像这样
【参考方案1】:
用这个替换你的第一块代码:
$array = Array
(
'core.login.offline' => Array
(
6 => 1
),
'core.admin' => Array
(
20 => 1,
1 => 1,
8 => 1,
53 => 1
)
);
你有很多语法错误,我建议你复习一下php。
数组键必须是字符串或整数,因此您必须用单引号/双引号替换这些括号。如果有另一个继续值/键值对,还必须在数组值后添加逗号。
【讨论】:
OP 可能向我们展示了print_r();
的输出,只需将$array =
放在它前面。
如果我根据给定的信息回答正确,即使您是对的,基于“可能”投票是否不公平?
我很确定这是print_r()
的输出,因为它看起来就像这样。此外,由于 OP 在其下编写了完全有效的代码,我确信他知道如何正确定义数组。从目前的信息来看,问题是不可能重现错误,所以问题应该这样结束
输出是 print_r,但我发现了问题。我放错了;在我未设置 php -l 后没有报告它。
问题已解决【参考方案2】:
我发现了问题:在我的 unset php -l 没有报告之后,这是一个放错位置的;
。
【讨论】:
以上是关于从命名的多维数组中删除一个值[关闭]的主要内容,如果未能解决你的问题,请参考以下文章