取消设置 foreach 循环中的数组值
我设置了一个foreach循环来遍历我的数组,检查某个链接,如果它找到它,它就会从数组中删除该链接。
我的代码:
foreach($images as $image)
{
if($image == 'http://i27.tinypic.com/29yk345.gif' ||
$image == 'http://img3.abload.de/img/10nx2340fhco.gif' ||
$image == 'http://i42.tinypic.com/9pp2456x.gif')
{
unset($images[$image]);
}
}
但它不会删除整个数组。这可能与 有关,因为这不是数组条目的键,而只是内容?有没有办法在不合并计数器的情况下做到这一点?$images[$image]
谢谢。
编辑:谢谢大家,但现在我有另一个问题,数组条目实际上并没有被删除。
我的新代码:
foreach($images[1] as $key => $image)
{
if($image == 'http://i27.tinypic.com/29yk345.gif')
$image == 'http://img3.abload.de/img/10nx2340fhco.gif' ||
$image == 'http://i42.tinypic.com/9pp2456x.gif')
{
unset($images[$key]);
}
}
$images实际上是一个二维数组,因此为什么我需要$images[1]。我已经检查过了,它成功地绕过了数组元素,有些元素实际上确实有一些我想删除的URL,但它们没有被删除。这是我的数组:$images
Array
(
[0] => Array
(
[0] => useless
[1] => useless
[2] => useless
[3] => useless
[4] => useless
)
[1] => Array
(
[0] => http://i27.tinypic.com/29yk345.gif
[1] => http://img3.abload.de/img/10nx2340fhco.gif
[2] => http://img3.abload.de/img/10nx2340fhco.gif
[3] => http://i42.tinypic.com/9pp2456x.gif
)
)
谢谢!