PHP条件——仅当字符串有任何值时显示?

PHP条件——仅当字符串有任何值时显示?,php,conditional,Php,Conditional,我需要显示一个或两个字符串的结果。每个字符串都包含一个以逗号分隔的项目列表。我需要将它们连接到一个列表中 我知道如何进行连接 我遇到的问题是,第二个字符串有时包含条目,有时不包含条目 如果第二个字符串包含数据,我希望显示连接的结果第一个字符串和第二个字符串。如果第二个字符串为空,我只想显示第一个字符串 有人能帮我想一想如何做到这一点吗 $string1 = 'test1,test2'; $string2 = 'test3,test4'; if(isset($string2) &&

我需要显示一个或两个字符串的结果。每个字符串都包含一个以逗号分隔的项目列表。我需要将它们连接到一个列表中

我知道如何进行连接

我遇到的问题是,第二个字符串有时包含条目,有时不包含条目

如果第二个字符串包含数据,我希望显示连接的结果第一个字符串和第二个字符串。如果第二个字符串为空,我只想显示第一个字符串

有人能帮我想一想如何做到这一点吗

$string1 = 'test1,test2';
$string2 = 'test3,test4';

if(isset($string2) && strlen($string2) > 0)
    echo($string1 . ',' . $string2);
else echo($string1);

$string2 = '';

if(isset($string2) && strlen($string2) > 0)
    echo($string1 . ',' . $string2)
else echo($string1);
或者,如果您想要一个带有三元运算符的简洁语句:

$string1 = 'test1,test2';
$string2 = 'test3,test4';

echo $string1 . ($string2 ? ',' . $string2 : '');

unset($string2);

echo $string1 . ($string2 ? ',' . $string2 : '');
叫我疯子,但是

echo $string1;
if($string2 != '') {
  echo ', ', $string2;
}

应该足够了吗?

始终发布您一直在使用的示例代码,以便让其他人更好地了解您正在尝试执行的操作。谢谢你听说过if吗?嗨,是的,我知道这和条件反射有关。但我不知道如何形成它如果你用一个空字符串。。。这和不显示它不一样吗?我搞不懂这是什么问题。你是在找trim$str,','?也许我知道如何做串联并不完全正确?我们能看看你的密码吗?我知道你在说什么。我的意思是,我知道如何使concat工作,尽管我认为下面描述的其他方法使其不必要。谢谢你的帮助。获得不同的观点和意见真的很有价值。谢谢观察家!很抱歉问了这么简单的问题,但是你给我展示了两种不同的方法,对吗?不,我给你展示了一种方法和两个例子。一个是第二个字符串不是空的,另一个是空的。我真的认为没有必要使用isset或strlen函数检查变量,因为如果变量没有声明或是空字符串,那么它会自动计算为false。@Ibrahimazharmar我认为这取决于应用程序。您希望确保在尝试将变量传递给strlen函数之前设置了该变量,并且如果字符串在适用的代码段之前经过某种处理,那么它可能会以一个值开始,最终由于任何原因被修剪为零。就我个人而言,我的理智值得时不时的几次时钟循环。@Ibrahim Azhar Armar:这在很多层面上都是错误的。第一:创建未定义的变量通知是不好的做法。第二:0的计算结果也为false。