UTF-8 PHP 将不可打印字符"space"替换为不可打印字符"line break"



我有一个字符串在UTF-8non-printable space,我需要替换为non-printable linebreak

类似于str_replace('&nbsp;','<br />',$string);,但与non-printable characters

如果你在引号之间输入特定的字符,它实际上是有效的:

str_replace(' ', '', $string)
             ^   ^^
        put characters here

由于这可能有点难以键入和/或使源代码不那么明显,因此可以用字节表示法编写这些字符串字面值。只要弄清楚你在谈论的具体字符以及它的编码字节:

str_replace("xE2x80xAF", "x0A", $string)

这是用常规换行(0A)替换ZERO-WIDTH SPACE (UTF-8编码E2 80 AF)。在您选择的Unicode表中查找它。可能使用echo bin2hex($string)检查您现有的字符串,以找出它包含的字节。

如何:str_replace('&nbsp;' , PHP_EOL , $string);

或者更好:str_replace( array( '&nbsp;', ' ' ) , PHP_EOL , $string);

相关内容

  • 没有找到相关文章

最新更新