由于某种原因,我无法确定为什么空数组键不是unset
。这就是我的......
PHP
<?php
$attachments = explode('|',$_POST['post_attachments']);
foreach($attachments as $k=>$v)
{
echo 'k = \''.$v."'\n";
if ($v=='')
{
unset($k);
}
}
print_r($attachments);die();
?>
输出
k =''
k ='secret_afound.gif'
k ='secret_aunlocked.gif'
数组(
[0] => [1] => secret_afound.gif [2] => secret_aunlocked.gif
)
答案 0 :(得分:3)
你应该这样做:
foreach ($attachments as $k=>$v) {
//...magic
unset($attachments[$k]);
}
答案 1 :(得分:0)
您只是取消设置$k
,而不是附件中的元素。试试unset($attachments[$k]);
答案 2 :(得分:0)
我相信你应该使用unset($attachments[$k])
;。
在这种情况下,我喜欢将$k
视为临时变量。即使你unset
,你也没有改变$attachments
。