php空格除不掉的解決方法:1、使用十六進位編輯器查看位元組;2、為“regex-pattern”添加u參數;3、使用“str_replace(' ', ' ', $fieldname);」方式替換空格即可。
本教學操作環境:windows7系統、PHP8.1版、Dell G3電腦。
php 空格除不掉怎麼辦?
我得到一個PHP字串,我需要刪除空格。我使用了以下程式碼但是當我回顯$classname時,它只顯示仍然包含空格的字串。
$fieldname = the_sub_field('venue_title'); $classname = str_replace(' ', '', $fieldname); echo $classname;
使用十六進位編輯器查看字節,如果HEX中的空格不是20那麼它不是"正常"空格。您可以使用PHP中的簡單函數轉換為HEX。
可能重複在PHP中刪除變數內的空格
嘗試為regex-pattern添加u參數,因為字串可以具有UTF-8編碼:
$classname = preg_replace('/\s+/u', '', $fieldname);
哇。非常感謝!幫助!
這是唯一對我有用的東西
同樣在這裡。字串是從Wordpress元字段中恢復的。儲存在管理面板中,在從舊網站"複製貼上"後,使用不同的編碼...
如果您知道空白區域僅由空格所致,您可以使用:
$classname = str_replace(' ','',$fieldname );
但如果它可能是由於空間,你可以使用:
$classname = preg_replace('/\s+/','',$fieldname )
嘗試用\s 代替\h 獲取水平空格,如果需要,這將保留換行符。
問題可能是字元不是空格,而是另一個空白字元。
嘗試
$classname = preg_replace('/\s/', '', $fieldname);
像這樣使用修剪
TRIM($fieldname);
編輯:
preg_replace('/\s+/', '', $fieldname);
trim()只會從字串的開頭和結尾刪除空格
'trim()'僅在字串的開頭或結尾處修剪。在Paul的例子中,空白字元可能在字串中。
問題是它正在拉動的領域,而不是PHP的其餘部分。 'the_sub_field('venue_title')'從wordpress插件'高級自訂字段'中提取字段,但此函數用於顯示資料而不是僅檢索它。相反,我使用'get_sub_field('venue_title')'並且它有效。為這個幫助歡呼
這是對這種威脅的正確答案,需要加以標記
可能是空間不是真正的空間,而是其他形式的白色空間。
您可能想嘗試:
$classname = preg_replace('/\s+/', '', $fieldname);
從這裡。
嘗試用\h 代替水平空格,如果需要,這將保留換行符。
$fieldname ="I am 21 Years Old"; $classname = str_replace(' ', '', $fieldname); echo $classname; ?>
這完美運行。
透過此函數檢查傳回值:the_sub_field('venue_title');
我認為問題是該字串不會被視為字串。它需要"在任何一方。你會如何在PHP中執行此操作?例如$ fieldname ="'"。the_sub_field('venue_title')。"'";
使用"". the_sub_field('venue_title ')。"或" the_sub_field('venue_title') "
推薦學習:《PHP影片教學》
以上是php 空格除不掉怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!