Невозможно получить str_replace () для выделения пробелов в строке PHP

Привет, я получаю строку PHP, которую мне нужно удалить из пространства. Я использовал следующий код, но когда я эхо $classname он просто отображает строку с пробелами в ней.

  <?php $fieldname = the_sub_field('venue_title'); $classname = str_replace(' ', '', $fieldname); echo $classname; ?> 

Попробуйте добавить u -параметр для regex-pattern, потому что строка может иметь кодировку UTF-8:

 $classname = preg_replace('/\s+/u', '', $fieldname); 

Если вы знаете, что пробел – это только пробелы , вы можете использовать:

 $classname = str_replace(' ','',$fieldname ); 

Но если это может быть связано с пространством , вы можете использовать:

 $classname = preg_replace('/\s+/','',$fieldname ) 

Проблема может заключаться в том, что символ не является пространством, а другим символом пробела.

Пытаться

 $classname = preg_replace('/\s/', '', $fieldname); 

Может быть, пространство на самом деле не пространство, а другая форма whitesspace.

Вы можете попробовать:

 $classname = preg_replace('/\s+/', '', $fieldname); 

Отсюда .

используйте обрезку как это

 TRIM($fieldname); 

РЕДАКТИРОВАТЬ:

 preg_replace('/\s+/', '', $fieldname); 

Проблема заключалась в том, что она тянула, а не остальную часть php. 'the_sub_field (' venue_title ')' вытаскивает поле из плагина wordpress 'Дополнительные пользовательские поля', но эта функция предназначена для отображения данных, а не для их извлечения. Вместо этого я использовал 'get_sub_field (' venue_title ')', и это сработало. приветствие за помощь

 <?php $fieldname = "I am 21 Years Old"; $classname = str_replace(' ', '', $fieldname); echo $classname; ?> 

Это отлично работает. Проверьте возврат значения этой функцией: the_sub_field('venue_title') ;