我有一个串联形式的字符串:
$string = $firstName." | ".$middleName." | ".$lastName;
现在考虑$middleName为空。
它将显示如下:
John | | Doe
我想忽略那些空的变量。
我想要这样:
John Doe
我需要一个快速的方法。如果else条件为,我也可以通过解决此问题,但这不是最佳解决方案。
我需要一种快速的方法来处理这种情况。
有什么解决方案吗?
试试这个:
$string = implode(' | ', array_filter(array($firstName, $middleName, $lastName), 'strlen'));
现在,您甚至可以创建一个大型参数数组。所有空参数在进行凹入之前都会被剥离。我现在用的是烟斗,但任何东西都可能偏离正轨。
为什么不这样:
$name = implode(" ", array($firstName, $middleName, $lastName));
字符串替换方法可以特定于以下序列中的中间名
defaultName="defaultName123";
middlename=(userInput==")?defaultName:userInput;
现在字符串将包含
|defaultname123|
只有在中间,你才能取代它。
PS很抱歉仍然有一个if语句隐藏在?:
第三语句