今天發生一個神奇的錯誤!~ 就是建立的資料中,"看起來" 似乎是對的,但是竟然在資料內多了一個 "Zero Width Space"
 
這是一個用在排版的特殊字元,但是在一般情況就會很慘!因為看起來是對的,實際上卻是錯誤的。
 
所以就只好在使用者傳入的資料中加上以下的語法來濾掉囉!
// remove zero width space
$value = str_replace("\xe2\x80\x8b", '', $value);
$value = str_replace("\xe2\x80\x8c", '', $value);
$value = str_replace("\xe2\x80\x8d", '', $value);
 
這三個符號分別是 (參考資料)
Unicode
code point
character UTF-8
(in literal)
name
U+200B   \xe2\x80\x8b ZERO WIDTH SPACE
U+200C \xe2\x80\x8c ZERO WIDTH NON-JOINER
U+200D \xe2\x80\x8d ZERO WIDTH JOINER
 
Facebook 討論區載入中...