我的功能如下:
function ypg_delete_img($id, $img)
{
$q = $this->ypg_get_one($id);
$imgs = explode(',', $q->image);
if(count($imgs) > 1) :
$z = ",";
else :
$z = "";
$data['image'] = 'avatar_mali_oglas.png';
$this->db->where('id_yellow_pages', $id);
$this->db->update('yellow_pages', $data);
endif;
if($imgs[0] != 'avatar_mali_oglas.png') :
$query = "UPDATE `yellow_pages` ";
$query .= "SET `image` = REPLACE(`image`,'". $img . $z ."', '')
WHERE `id_yellow_pages` = $id ";
$this->global_functions->delete_img('zute_strane', $img);
$this->db->query($query);
endif;
}
我需要检查 $ img 是 $ imgs 数组中的最后一个值。我怎么能这样做?
答案 0 :(得分:6)
使用end()
if ($img == end($imgs)) {
// $img is the last element of the array
}
答案 1 :(得分:1)
检查结束():http://php.net/manual/fr/function.end.php
赞:if($ img == end($ imgs))
答案 2 :(得分:0)
请参阅以下代码。
if($imgs[count($imgs) -1] == $img)
{
// $img is the last image
}
希望这会有所帮助:)
答案 3 :(得分:0)
这样的事情应该有效:
<?php
$lastitem = array_pop($imgs);
if ($img == $lastitem) {
// is last image
}
?>
array_pop返回数组的最后一个元素,之后你只需要比较这两个值。