将php数组中的所有值作为句子回显

use*_*146 0 php arrays echo

是否可以将数组显示为句子?因此,在每个值之间将有“,”,但在最后一个值之前将有“和”。

我已经在示例中使用了这小段代码:

<?php
$cars=array("Volvo","BMW","Toyota"); 
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>
Run Code Online (Sandbox Code Playgroud)

这适用于三个值,但我需要它可用于1到15个值。

谢谢

web*_*ave 5

$carsCount = count($cars);

if ($carsCount == 1) {
    $sentence = $cars[0] . '.';
} else {
    $partial = array_slice($cars, 0, $carsCount-1);
    $sentence = implode(', ', $partial) . ' and ' . $cars[$carsCount-1];
}

echo $sentence;
Run Code Online (Sandbox Code Playgroud)