检查数组计数然后添加条件以添加"和"最后一个数组输出

时间:2017-05-12 04:02:27

标签: php arrays string implode

我已成功创建检查数组计数的条件。我所拥有的一切都在起作用,但我想弄清楚如何配置它,以便结果是:

1, 2, 3

我希望它是:

1, 2 and 3

我该怎么做?

$proposal_type_arr = $_POST['prop-type'];
$proposal_type_count = count($proposal_type_arr);
if ($proposal_type_count == 1) {
    $proposal_type = implode("", $proposal_type_arr);
} 
else if ($proposal_type_count == 2) {
    $proposal_type = implode(" and ", $proposal_type_arr);
}
else if ($proposal_type_count > 2) {
    $proposal_type = implode(", ", $proposal_type_arr);
}

2 个答案:

答案 0 :(得分:1)

你可以这样做。

Try this code snippet here sample array taken

elseif ($proposal_type_count > 2)
{
    $temp=$proposal_type_arr[$proposal_type_count-1];//getting last element
    unset($proposal_type_arr[$proposal_type_count-1]);//unsetting last element
    $proposal_type = implode(", ", $proposal_type_arr);
    echo $proposal_type.= " and $temp";//attaching last element with "and "
}

答案 1 :(得分:1)

您可以使用array_pop弹出最后一个元素,如果您想保留前两个元素,请使用array_slice()。然后使用implode将数组转换为字符串。

$end =  array_pop(&$array);
echo implode(',', $array) . ' and ' . $end;