推 yuan0258:原來如此謝了 03/04 01:19
※ 引述《yuan0258 (阿元)》之銘言:
: function utf8_strrev($str){
: preg_match_all('/./us', $str, $ar);
: return join('',array_reverse($ar[0]));
: }
: 這是php官網有人提供的函式
: 可以將中文字串反轉不會有亂碼的問題
: 但是我看不懂preg_match_all那行為什麼能夠有轉碼的效果
: 有人可以幫忙解釋一下嗎?感激
http://tw.php.net/manual/en/reference.pcre.pattern.modifiers.php
u (PCRE_UTF8)
This modifier turns on additional functionality of PCRE that is incompatible
with Perl. Pattern strings are treated as UTF-8. This modifier is available
from PHP 4.1.0 or greater on Unix and from PHP 4.2.3 on win32. UTF-8 validity
of the pattern is checked since PHP 4.3.5.
嚴格來說 它是把UTF-8字串反轉 並沒有轉碼的功能
因為用u參數 傳來的字串會視為UTF-8
再用preg_match_all 就可以把每個"字"(即UTF-8的字)拆進$ar裡
於是array_reverse反過來再join就反轉完成了
--
実琴:「河野!你真的就這樣被物質慾望給吸引過去了嗎?!」
亨:「只要穿著女裝擺出親切的樣子,所有必要花費就能全免,似乎一點都不壞啊。」
実琴:「難道你沒有男人的尊嚴了嗎?!」
亨:(斷然道)「沒有。在節衣縮食且生活吃緊的學生面前,沒有那種東西。」
--プリンセス・プリンセス 第二話
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 192.192.197.115