Привет, я получаю строку 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')
;