在PHP中是否可以用自定义文本替换空字符串?

在PHP中是否可以用自定义文本替换空字符串?,php,string,str-replace,Php,String,Str Replace,我使用的是str_replace()PHP函数,它不会替换空字符串 是否可以使用其他PHP函数替换它 这是我的密码: $var = "text1|text2"; $expn = explode("|", $var); $new = "new text"; str_replace($expn[1], $new, $var); 此代码确实有效,但如果第二个值为空,则不会: $var = "text1|"; $expn = explode("|", $var);

我使用的是str_replace()PHP函数,它不会替换空字符串

是否可以使用其他PHP函数替换它

这是我的密码:

  $var = "text1|text2";
  $expn = explode("|", $var);

  $new = "new text";

  str_replace($expn[1], $new,  $var);
此代码确实有效,但如果第二个值为空,则不会:

  $var = "text1|";

  $expn = explode("|", $var);

  $new = "new text";

  str_replace($expn[1], $new,  $var);
我想让它回显文本1——新文本,但它没有。在第一种情况下,它没有问题。我希望这是改变无论如何,它不取决于它是否是空的


提前感谢。

在您的
爆炸()后尝试此操作。


在您的
分解()后尝试此操作:


如果您在|处分解
text1 |
,则|之后没有任何内容。。因此,
$expn[1]
中没有任何内容,要么你在问我不明白的问题,要么你应该使用
$expn[0]
@robz228当然有:
var_dump(explode(“|“,”某物“)这是一个空字符串。如果在|处分解
text1 |
,则在|之后没有任何内容。。因此,
$expn[1]
中没有任何内容,要么你在问我不明白的问题,要么你应该使用
$expn[0]
@robz228当然有:
var_dump(explode(“|“,”某物“)这是一个空字符串。当然!!!我从没想过。非常感谢你。我会在几分钟内接受答案。在再次阅读您的问题后,我实际上已经编辑了代码以使其更加正确,但不客气!当然我从没想过。非常感谢你。我会在几分钟内接受答案。在再次阅读您的问题后,我实际上已经编辑了代码以使其更加正确,但不客气!
if ($expn[1] == '') {
  $var .= 'new text';
} else {
  str_replace($expn[1], $new,  $var);
}