我需要削減字符串大約160個字符,但我想通過最接近的空格字符來切斷。通過使用UTF-8字體(mb_
函數),任務變得更糟。我的代碼如下:php找到最接近空格的字符後mb_substr()
<?php
function mb_strrev($str, $encoding='UTF-8'){
return mb_convert_encoding(strrev(mb_convert_encoding($str, 'UTF-16BE', $encoding)),
$encoding, 'UTF-16LE');
}
$in = mb_strpos(mb_strrev(trim(mb_substr($mysring, 0, 165))), ' ');
$new = mb_substr(mb_strrev(trim(mb_substr($mysring, 0, 165))), $in, 165);
mb_strrev($new);
?>
有誰知道更優雅的方式?
UTF-8是不是一種字體,這是一個*編碼*。 – deceze
@deceze,實際上,我使用utf8編碼的字體 – drdarwin
不,您正在處理以UTF-8編碼的* strings *。 :-P – deceze