Trim 不会从字符串中删除空格,如何删除元素?

Trim wont remove the whitespace from string, how to remove elements?

我确定这是非常简单的解决方案,但我已经尝试了很多解决方案来解决这个问题,但没有任何帮助。

我正在尝试从字符串的 start/end 中去除白色 space,下面是我的简单代码:

$equipment_data = maybe_unserialize( get_post_meta( $id, 'recipe_equipment', true ) );

$equipment_data2 = trim($equipment_data);
var_dump($equipment_data2);

下面是输出,如您所见,它的开头和结尾都有一个 space。

编辑

使用 urlencode 后,我可以看到返回了以下内容:

%3Cp%3E 在字符串的开头 (<p>)

%3C%2Fp%3E%0A 在字符串末尾 (</p>)

因此我做了以下事情:

$equipment_data = trim($equipment_data, "<p>");
$equipment_data = trim($equipment_data, "</p>");
var_dump($equipment_data);

但是,这会在开始而不是结束时使用 space,可能与 %0A 有什么关系?

使用 preg_replace() 而不是 trim()

$stripped = preg_replace('/\s/', '', $sentence);

此代码将删除字符串中的所有空格。

使用preg_replace()删除保留的标签:

$stripped = preg_replace('/\<.*?\>/', '', $sentence);

(您可以搜索“<”和“>”或“%3C”和“%3E”)

$stripped = preg_replace('/\%3C.*?\%3E/', '', $sentence);