从数组中删除值
Posted
技术标签:
【中文标题】从数组中删除值【英文标题】:Delete the value out of an array 【发布时间】:2019-04-12 22:25:55 【问题描述】:我是一个菜鸟程序员,很抱歉,但我在从数组中删除一个值时遇到了问题。
在这里我foreach我的会话,如果添加了多个值,它是一个数组,我检查它是否是一个数组,如果它是我循环通过它并回显它。我创建了一个删除链接,该链接生成了一个 get id(key)。
foreach ($session->get('results') as $num => $value)
if (!is_array($value))
echo $value . '<br>';
else
$av = count($value);
for ($a = 0; $a < $av; $a++)
echo $value[$a] . '<a href="export.php?key='. $num .'">verwijder</a><br>';
当点击链接时,它会生成一个get id,我检查是否设置了get id。现在我想取消设置与 get id 具有相同 $key 的值。
if (isset($_GET['key']))
if (is_array($value))
unset($value[$_GET['key']]);
此时,get id 已创建,但不会使用相同的键取消设置值。有人对此有答案,或有其他方法吗?
【问题讨论】:
您是否尝试过as $num => &$value)
,使用&
是对允许您更改它的值的引用。尽管由于***.com/questions/4969243/strange-behavior-of-foreach,请记住在foreach()
之后使用unset($value);
。
刚试了一下,还是不行,谢谢热心人!
你能展示你最后一段的完整代码吗,这段代码如何适应循环等?
如果是 Laravel 使用 forget() 方法
【参考方案1】:
$session->get('results') as $num => $value
$num
是$session->get('results')
中元素的键
你的链接 -> <a href="export.php?key='. $num .'
如果你想用这个键删除值unset($session->get('results')[$_GET['key']])
【讨论】:
我自己想到了这个,但我得到的结果与我使用unset($value[$_GET['key']])
时的结果相同,它仍然不会取消它以上是关于从数组中删除值的主要内容,如果未能解决你的问题,请参考以下文章