2013-08-29 61 views
0

我正在使用不替換空字符串的str_replace()PHP函數。是否可以使用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); 

我想這呼應的text1 |新的文本,但它沒有。在第一種情況下,它沒有問題。無論如何,我希望這個改變,它不取決於它是否爲空。

在此先感謝。

+2

,如果你是爆炸'文本1 |在'|,那裏有後罷了| ..所以那裏有在'$ EXPN什麼[1]'要麼你是問一個我不明白的問題,或者你應該使用'$ expn [0]' – robz228

+0

@ robz228當然有:'var_dump(explode(「|」,「something |」));'這是一個空字符串。 – Sebastian

回答

4

試試這個你explode()後:

if ($expn[1] == '') { 
    $var .= 'new text'; 
} else { 
    str_replace($expn[1], $new, $var); 
} 
+0

當然!!!從來沒有想到這一點。非常感謝你。我會在幾分鐘內接受答案。 –

+0

我已經編輯了代碼,在再次閱讀您的問題後更加正確,但不客氣! – ChunkyBaconPlz

相關問題