$postData['QuanTopic']['content'] = strip_tags($postData['QuanTopic']['content']); //去除字符串中的html的标签
$postData['QuanTopic']['content'] = preg_replace('/ /', ' ', $postData['QuanTopic']['content']); // 正则表达式把文本中的空格&nbap; 替换成真的 ' ', 然后trim() 过滤
// echo mb_strlen( trim($postData['QuanTopic']['content'])); die;
有时候利用了编辑器的插件,导致更新完内容之后,发现字符串的长度不对,var_dump(),打印出来的是 string(12) " 送达"(这是举了个例子),按理说应该是 1 + 3 + 3 = 7 (UTF-8编码的汉字占3字节)
但是显示的长度却是 12,为什么 ? 因为插件把空格 当做 处理了。这样算出来正好是(6 + 3 + 3) 12了,怎么强制把他转为空格呢? 正则表达式匹配替换,用str_replace()实现不了,原因不明。
而在匹配的时候切记要把&给转义一下,不然就会失败。
mb_strlen() 函数的作用 是多字节的字符,都按1个字节处理!