1
做這兩個代碼片段是一回事嗎?「utf8 :: upgrade」和「is_utf8/decode'latin1'」之間有區別嗎?
utf8::upgrade($s);
use Encode qw(is_utf8 decode);
$s = is_utf8($s) ? $s : decode('latin1', $s);
做這兩個代碼片段是一回事嗎?「utf8 :: upgrade」和「is_utf8/decode'latin1'」之間有區別嗎?
utf8::upgrade($s);
use Encode qw(is_utf8 decode);
$s = is_utf8($s) ? $s : decode('latin1', $s);
進行復印和一旁的這樣的影響,他們是同樣的事情,但僅僅是因爲如何decode('latin1', $_)
處理無效LATIN1字符串,如"\x90"
。
該表達式返回不同的內容(在內部使用的字節數與$s
),但我認爲你放棄了這一點。
我希望你問,因爲你想用前者替換後者!