PHP Array Implode消除了空数组上的最后一个粘合剂

时间:2014-05-07 05:18:14

标签: php codeigniter

我有3个可选输入文本,根本不需要,但至少应填写一个。

<input type="text" name="text1" class="form-control">
<input type="text" name="text2" class="form-control">
<input type="text" name="text3" class="form-control">

我将它们的值放在数组中

$p =array{
    $this->input->post('text1'),
    $this->input->post('text2'),
    $this->input->post('text3')
}

如果我只填写2个字段,结果如下:

Array
(
    [0] => John
    [1] => Jack
    [2] => 
)

我摧毁了他们:

$passenger = implode(',', $p);

结果:

John, Jack,

我想要的是:

John, Jack

如何使用PHP消除最后','?谢谢

2 个答案:

答案 0 :(得分:3)

使用array_filter在插入数据之前从数组中删除空条目。

$passenger = implode(',', array_filter($p));

答案 1 :(得分:0)

你应该使用修剪功能。

$passenger = trim(implode(',', $p),",");

$passenger = implode(',', $p);
$passenger = trim($passenger,",");

同样在这个数组的情况下

Array
(
    [1] => Jack
    [2] => 
    [3] => ,
)

完美修剪工作。

$passenger = trim(implode(',', $p),",");

输出: 千斤顶