使用数组中的串行逗号

时间:2014-04-15 22:23:53

标签: php arrays function comma implode

Newb在这里与'爆炸'首次。我正在尝试处理串行逗号如何在数组中打印或不打印。我找到了几种有效的方法,并试图按照我所看到的情况进行自我调整,但我的工作并不起作用,我不知道为什么。

我希望下面的函数会返回下面的结果显示,但是当我测试时它似乎没有返回/没有任何反应。我看过我的格式,分号等,我很难过。这有点超出我的想法,非常令人兴奋。我试图理解为什么这不起作用以及如何使它在某个地方清楚地工作我的逻辑或理解是非常错误的,因为没有任何事情发生。

预期/希望结果: 一个 a和b a,b和c

实际结果:<白色空间/没有html渲染/ nada / nothing / zippo>

<?php
 $items = array('a','b','c');

 function render_array_as_serial_comma($items) {
 $items = $variables['items'];

 if (count($items) > 1) {
 $last = array_pop($items);
 return implode(', ', $items) . ' and ' . $last;
}
 return array_pop($items);

 render_array_as_serial_comma(array('a'));
 render_array_as_serial_comma(array('a', 'b'));
 render_array_as_serial_comma(array('a', 'b', 'c'));
 ?>

1 个答案:

答案 0 :(得分:1)

我想你忘记了回声:)

<?php
$items = array('a', 'b', 'z');

function render_array_as_serial_comma($items) {
    $final_string = array_pop($items);
    if(count($items) >= 1) {
        $final_string = implode(', ', $items) . ' and ' . $final_string;
    }
    return $final_string;
}

echo render_array_as_serial_comma($items);

Sample Fiddle