str_replace ® 符号在 PHP 中不起作用
str_replace on ® symbol does not work in PHP
真的如标题所说。下面的代码总是returns false:
$product = str_replace('®', '', $product);
我还尝试搜索 html 实体中的 ® 符号。
有解决办法吗?
由于文件编码,您必须将符号解码为其实体值 (®
)
$product = html_entity_decode(str_replace('®', '', htmlentities($product)));
我认为 HD- 的回答是正确的,但我认为这个带有特殊字符的字符串来自数据库,您没有快速的方法将 ® 符号转换为它的 HTML 表示 ®
;
您遇到的问题可能是因为数据库连接使用的编码与您的 php 脚本使用的编码不同。
如果您的 PHP 脚本以 UTF-8 格式保存,请尝试以下代码:
$product = str_replace('®', '', utf8_encode($product));
真的如标题所说。下面的代码总是returns false:
$product = str_replace('®', '', $product);
我还尝试搜索 html 实体中的 ® 符号。
有解决办法吗?
由于文件编码,您必须将符号解码为其实体值 (®
)
$product = html_entity_decode(str_replace('®', '', htmlentities($product)));
我认为 HD- 的回答是正确的,但我认为这个带有特殊字符的字符串来自数据库,您没有快速的方法将 ® 符号转换为它的 HTML 表示 ®
;
您遇到的问题可能是因为数据库连接使用的编码与您的 php 脚本使用的编码不同。
如果您的 PHP 脚本以 UTF-8 格式保存,请尝试以下代码:
$product = str_replace('®', '', utf8_encode($product));