a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > PHP > 正文

PHP實現(xiàn)全角字符轉(zhuǎn)為半角方法匯總

2020-03-24 18:56:51
字體:
供稿:網(wǎng)友
php $str = "0123ABCDFWS\",.?<>{}[]*&^%#@!~()+-|:;"; echo "$str"; echo " br / $str = preg_replace('//xa3([/xa1-/xfe])/e', 'chr(ord(/1)-0x80)', $str); echo $str;這是網(wǎng)上看來的代碼,所有的中文標點的第二個字節(jié)減去0X80(即128)所得的數(shù)字就是半角所得的數(shù)字了。而/e模式表達的是:如果設(shè)定了此修正符,preg_replace() 在替換字符串中對逆向引用作正常的替換,將其作為 PHP 代碼求值,并用其結(jié)果來替換所搜索的字符串。在非UTF-8模式下這個函數(shù)是可行的,但是UTF-8下 這個方法就似乎無效,方法二:
$queue = Array('0' = '0', '1' = '1', '2' = '2', '3' = '3', '4' = '4', '5' = '5', '6' = '6', '7' = '7', '8' = '8', '9' = '9', 'A' = 'A', 'B' = 'B', 'C' = 'C', 'D' = 'D', 'E' = 'E', 'F' = 'F', 'G' = 'G', 'H' = 'H', 'I' = 'I', 'J' = 'J', 'K' = 'K', 'L' = 'L', 'M' = 'M', 'N' = 'N', 'O' = 'O', 'P' = 'P', 'Q' = 'Q', 'R' = 'R', 'S' = 'S', 'T' = 'T', 'U' = 'U', 'V' = 'V', 'W' = 'W', 'X' = 'X', 'Y' = 'Y', 'Z' = 'Z', 'a' = 'a', 'b' = 'b', 'c' = 'c', 'd' = 'd', 'e' = 'e', 'f' = 'f', 'g' = 'g', 'h' = 'h', 'i' = 'i', 'j' = 'j', 'k' = 'k', 'l' = 'l', 'm' = 'm', 'n' = 'n', 'o' = 'o', 'p' = 'p', 'q' = 'q', 'r' = 'r', 's' = 's', 't' = 't', 'u' = 'u', 'v' = 'v', 'w' = 'w', 'x' = 'x', 'y' = 'y', 'z' = 'z');echo preg_replace_callback("/([/xEF][/xBC][/x90-/x99]|[/xEF][/xBD][/x81-/x9A/xA1-/xBA])/", 'next_fchar', '0');function next_fchar($matches){ global $queue; return $queue[$matches[1]];方法三:* 字符串半角和全角間相互轉(zhuǎn)換* @param string $str 待轉(zhuǎn)換的字符串* @param int $type TODBC:轉(zhuǎn)換為半角;TOSBC,轉(zhuǎn)換為全角* @return string 返回轉(zhuǎn)換后的字符串function convertStrType($str, $type) { $dbc = array( '0' , '1' , '2' , '3' , '4' , '5' , '6' , '7' , '8' , '9' , 'A' , 'B' , 'C' , 'D' , 'E' , 'F' , 'G' , 'H' , 'I' , 'J' , 'K' , 'L' , 'M' , 'N' , 'O' , 'P' , 'Q' , 'R' , 'S' , 'T' , 'U' , 'V' , 'W' , 'X' , 'Y' , 'Z' , 'a' , 'b' , 'c' , 'd' , 'e' , 'f' , 'g' , 'h' , 'i' , 'j' , 'k' , 'l' , 'm' , 'n' , 'o' , 'p' , 'q' , 'r' , 's' , 't' , 'u' , 'v' , 'w' , 'x' , 'y' , 'z' , '-' , ' ' , ':' , '.' , ',' , '/' , '%' , '#' , '!' , '@' , '&' , '(' , ')' , '<' , '>' , '"' , ''' , '?' , '[' , ']' , '{' , '}' , '\' , '|' , '+' , '=' , '_' , '^' , '¥' , ' ̄' , '`' $sbc = array( //半角 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '-', ' ', ':', '.', ',', '/', '%', ' #', '!', '@', '&', '(', ')', ' ', ' ', '"', '/'',' ', '[', ']', '{', '}', '//', '|', '+', '=', '_', '^', '¥','~', '`'if($type == 'TODBC'){return str_replace( $sbc, $dbc, $str ); //半角到全角}elseif($type == 'TOSBC'){return str_replace( $dbc, $sbc, $str ); //全角到半角}else{return $str;方法四:
* 將一個字串中含有全角的數(shù)字字符、字母、空格或'%+-()'字符轉(zhuǎn)換為相應(yīng)半角字符* @access html' target='_blank'>public* @param string $str 待轉(zhuǎn)換字串* @return string $str 處理后字串function make_semiangle($str)$arr = array('0' = '0', '1' = '1', '2' = '2', '3' = '3', '4' = '4','5' = '5', '6' = '6', '7' = '7', '8' = '8', '9' = '9','A' = 'A', 'B' = 'B', 'C' = 'C', 'D' = 'D', 'E' = 'E','F' = 'F', 'G' = 'G', 'H' = 'H', 'I' = 'I', 'J' = 'J','K' = 'K', 'L' = 'L', 'M' = 'M', 'N' = 'N', 'O' = 'O','P' = 'P', 'Q' = 'Q', 'R' = 'R', 'S' = 'S', 'T' = 'T','U' = 'U', 'V' = 'V', 'W' = 'W', 'X' = 'X', 'Y' = 'Y','Z' = 'Z', 'a' = 'a', 'b' = 'b', 'c' = 'c', 'd' = 'd','e' = 'e', 'f' = 'f', 'g' = 'g', 'h' = 'h', 'i' = 'i','j' = 'j', 'k' = 'k', 'l' = 'l', 'm' = 'm', 'n' = 'n','o' = 'o', 'p' = 'p', 'q' = 'q', 'r' = 'r', 's' = 's','t' = 't', 'u' = 'u', 'v' = 'v', 'w' = 'w', 'x' = 'x','y' = 'y', 'z' = 'z','(' = '(', ')' = ')', '〔' = '[', '〕' = ']', '【' = '[','】' = ']', '〖' = '[', '〗' = ']', '“' = '[', '”' = ']','‘' = '[', ''' = ']', '{' = '{', '}' = '}', '《' = ' ','》' = ' ','%' = '%', '+' = '+', '—' = '-', '-' = '-', '~' = '-',':' = ':', '。' = '.', '、' = ',', ',' = '.', '、' = '.',';' = ',', '?' = ' ', '!' = '!', '…' = '-', '‖' = '|','”' = '"', ''' = '`', '‘' = '`', '|' = '|', '〃' = '"',' ' = ' ');return strtr($str, $arr);全角與半角之區(qū)別(來自中文維基百科)全角,又稱全形、全寬,是電腦字符的一種格式,字面意思是比普通字符(或半角字符)寬的字符。傳統(tǒng)上,英語或拉丁字母語言使用一字節(jié)的空間來存儲,而漢字、日語等常使用兩字節(jié)存儲,在使用固定寬度文字的地方,為了使字體看起來整齊,英文字母、數(shù)字及其他符號,也由原來只占用一個字空間,改為一概占用兩個字的空間來顯示,并且使用兩個字節(jié)來存儲。以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 一区| 久久国产经典视频 | 久久亚洲一区二区三区四区 | 国产精品成av人在线视午夜片 | 成年免费视频黄网站在线观看 | 永久在线| jizz欧美大片 | 精品成人在线观看 | 欧美男人天堂网 | 黄av片| 亚洲成人综合视频 | 伊人欧美在线 | 黄色网址网站在线观看 | 国产一区二区精品在线 | 91久久 | 欧美午夜视频在线观看 | 国产精品美腿一区在线看 | 亚洲欧美日韩另类精品一区二区三区 | 精品国产91亚洲一区二区三区www | 亚洲综合在 | 99视频免费在线观看 | 国产精品久久久久久久久久东京 | 成人看片在线观看 | www.色综合 | 欧美久久一区二区三区 | 日韩免费高清视频 | h视频免费 | 这里有精品视频 | 夜夜躁狠狠躁夜躁麻豆 | 中文资源在线观看 | 天天夜夜操 | 国产成人一区二区三区 | 特黄级国产片 | 成人黄色一区 | 国产精品久久久一区二区 | 国产精品久久久久久久久久久久久久 | 国产极品福利 | 欧美成人手机在线 | 日韩av在线中文字幕 | 99精品在线 | 日本精品免费 |