我正在使用pregmatch:
$titleClass = str_replace(' ', '-', get_the_title());
$titleClass = preg_replace('/[^a-zA-Z0-9]/', '', strtolower($titleClass));
$titleClass = preg_replace('/-+/', '-', $titleClass);
我使用Wordpress是的,但因为这应该只是一个字符串,我想我可以在这里问。每当我使用这个pregmatch时,$titleClass
的输出用038替换&符号,任何想法如何将其删除?在" |"等符号上它完美无缺。
答案 0 :(得分:1)
看起来你的&符转换为htmlentity &038;
。在进行替换后,脚本将删除除数字和拉丁字符之外的所有字符。因此&038;
会转换为038
。
您可以在执行任何替换之前输出get_the_title()
函数的结果来检查是否为真。
为了删除它,您可以在进行替换之前使用html_entity_decode()函数: http://php.net/manual/en/function.html-entity-decode.php