Can';t获取str_replace()以去掉PHP字符串中的空格

Can';t获取str_replace()以去掉PHP字符串中的空格,php,string,str-replace,Php,String,Str Replace,嗨,我得到一个PHP字符串,我需要去掉其中的空格。我使用了下面的代码,但是当我回显$classname时,它只显示字符串,其中仍然包含空格 <?php $fieldname = the_sub_field('venue_title'); $classname = str_replace(' ', '', $fieldname); echo $classname; ?> 像这样使用饰件 TRIM($fieldname); 编辑: 问题可能

嗨,我得到一个PHP字符串,我需要去掉其中的空格。我使用了下面的代码,但是当我回显
$classname
时,它只显示字符串,其中仍然包含空格

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

像这样使用饰件

TRIM($fieldname);
编辑:


问题可能是字符不是空格,而是另一个空白字符

试一试


可能空间不是真正的空间,而是其他形式的空白

您可能要尝试:

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

从。

如果您知道只有空格才会出现空格,您可以使用:

$classname = str_replace(' ','',$fieldname ); 
$classname = preg_replace('/\s+/','',$fieldname )
但是如果它可能是由于空格,您可以使用:

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

这个运行得很好。
检查此函数返回的值:
子字段(“场馆标题”)

问题在于它所抽取的字段,而不是php的其余部分。”_sub_字段(“场馆标题”)从wordpress插件“高级自定义字段”中提取一个字段,但此功能旨在显示数据,而不仅仅是检索数据。相反,我使用了“get_sub_field('Vincement_title'),它起了作用。欢迎提供帮助

尝试为正则表达式模式添加u-参数,因为字符串可以使用UTF-8编码:

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

trim()
将只删除字符串开头和结尾的空格“trim()”只删除字符串开头或结尾的空格。在Paul的例子中,空白字符可能在字符串中。使用十六进制编辑器查看字节,如果空格不是十六进制的
20
,则它不是“正常”空格。您可以使用PHP中的一个简单函数将其转换为十六进制。我认为问题在于字符串没有被视为字符串。它需要一个“在任何一边。你会如何在php中做到这一点?例如$fieldname=“””。子字段(“场馆标题”)。“使用”“。子字段(“场馆标题”)。”或者“+子字段(“场馆标题”)+”“这是对这种威胁的正确回答,需要在此处标记为相同。已从Wordpress元字段检索字符串。保存在管理面板中,从旧站点“复制粘贴”后,使用不同的编码…您是真正的MVP用户,将
\h+
替换为水平空格,这将保留换行符(如果需要)。尝试将
\s+
替换为
\h+
替换为水平空格,如果需要,这将保留换行符。
$classname  =  preg_replace('/\s+/u', '', $fieldname);