快速功能或快速方式忽略连接字符串中的空值

时间:2013-12-11 12:20:59

标签: php

我有这个串联形式的字符串:

$string = $firstName." | ".$middleName." | ".$lastName;

现在考虑$ middleName为空。

它会显示如下:

John | | Doe

我想忽略那些空的变量。

我想这样:

John Doe

我需要一个快速的方法。我也可以通过 if else conditions 解决这个问题,但这不是最佳解决方案。

我需要一种快速方法来处理这类情况。

有任何解决方案吗?

3 个答案:

答案 0 :(得分:1)

试试这个:

$string = implode(' | ', array_filter(array($firstName, $middleName, $lastName), 'strlen'));

现在您甚至可以创建大量参数。在连接之前,所有空参数都被剥离。我现在使用了管道,但可能是任何偏离的道路。

答案 1 :(得分:0)

为什么不喜欢这样:

$name = implode(" ", array($firstName, $middleName, $lastName));

答案 2 :(得分:0)

字符串替换方法可以按以下顺序特定于中间名

defaultName =“defaultName123”;

middlename =(userInput ==“”)? defaultName:userInput;

现在字符串将包含

| defaultname123 |

只有在中间,你可以替换它。

PS抱歉还有一个if语句隐藏在? :

高等教育声明