目前我有這個代碼,用<br />
來代替任何雙空間。如何用str_replace()替換所有出現的兩個子字符串?
它按預期工作:
但是我想要做的另一個str_replace()
在同一行上有豎線|
更換任何單個空格。
我試着複製代碼,但是這只是爲我創建了另一個TD
。
任何幫助,將不勝感激。
目前我有這個代碼,用<br />
來代替任何雙空間。如何用str_replace()替換所有出現的兩個子字符串?
它按預期工作:
但是我想要做的另一個str_replace()
在同一行上有豎線|
更換任何單個空格。
我試着複製代碼,但是這只是爲我創建了另一個TD
。
任何幫助,將不勝感激。
排列的順序的確很重要,否則你會得到<br|/>
,而不是<br />
這樣試試:
str_replace(array(' ','||'), array('|','<br /><br />'), trim($result['garment_type']));
事情是這樣的:
echo str_replace(array(' ','||'), array('|','<br /><br />'), 'crunchy bugs are so tasty man');
給您:
crunchy<br /><br />bugs|are|so<br /><br />|tasty|man
基本上你是第一改變每個空間|
那麼你改變任何具有兩個彼此(||
)旁邊<br /><br />
。
如果你走另一條路,你會改變兩個空間,以<br /><br />
,然後你正在改變單一的空格|
和其間的<br />
有一個空格,所以你最終<br|/>
。
編輯與您的代碼:
'<tr class="' . ($counter++ % 2 ? "odd" : "even") . '">
<td>Garments:</td>
<td>' . str_replace(array(' ','||'), array('|','<br /><br />'), trim($result['garment_type'])) . '</td>
</tr>'
你可以通過數組str_replace函數
$what[0] = ' ';
$what[1] = ' ';
$with[0] = '<br /><br />';
$with[1] = '|';
str_replace($what, $with, trim($result['garment_type']))
我將如何在我的代碼中使用它。一個例子會很好 – Joe
Downvoted這個答案,因爲它是不正確的/不提供所需的輸出。 http://sandbox.onlinephpfunctions.com/code/6109975759520598646ebb4925af32147b02d9e3 – mickmackusa
要解決的問題與str_replace
(在<br />
空間正在與|
取代)嘗試strtr
:
echo strtr(trim($result['garment_type']), array(' '=>'|', ' '=>'<br /><br />'));
這個問題會,如果它得到改善提供了一些樣本輸入數據('$ result ['garment_type']')和期望的輸出字符串。請記住,未來,尋求教育的人將訪問這個頁面數千次。 – mickmackusa