PHP ASCII碼與字符串的相互轉換
飯可以一日不吃,覺可以一日不睡,書不可以一日不讀。以下是小編爲大家搜索整理PHP ASCII碼與字符串的相互轉換,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!
[代碼]php代碼:
class ascii {
/**
* 將ascii碼轉爲字符串
* @param type $str 要解碼的字符串
* @param type $prefix 前綴,默認:&#
* @return type
*/
function decode($str, $prefix="&#") {
$str = str_replace($prefix, "", $str);
$a = explode(";", $str);
foreach ($a as $dec) {
if ($dec < 128) {
$utf .= chr($dec);
} else if ($dec < 2048) {
$utf .= chr(192 + (($dec - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
} else {
$utf .= chr(224 + (($dec - ($dec % 4096)) / 4096));
$utf .= chr(128 + ((($dec % 4096) - ($dec % 64)) / 64));
$utf .= chr(128 + ($dec % 64));
}
}
return $utf;
}
/**
* 將字符串轉換爲ascii碼
* @param type $c 要編碼的字符串
* @param type $prefix 前綴,默認:&#
* @return string
*/
function encode($c, $prefix="&#") {
$len = strlen($c);
$a = 0;
while ($a < $len) {
$ud = 0;
if (ord($c{$a}) >= 0 && ord($c{$a}) <= 127) {
$ud = ord($c{$a});
$a += 1;
} else if (ord($c{$a}) >= 192 && ord($c{$a}) <= 223) {
$ud = (ord($c{$a}) - 192) * 64 + (ord($c{$a + 1}) - 128);
$a += 2;
} else if (ord($c{$a}) >= 224 && ord($c{$a}) <= 239) {
$ud = (ord($c{$a}) - 224) * 4096 + (ord($c{$a + 1}) - 128) * 64 + (ord($c{$a + 2}) - 128);
$a += 3;
} else if (ord($c{$a}) >= 240 && ord($c{$a}) <= 247) {
$ud = (ord($c{$a}) - 240) * 262144 + (ord($c{$a + 1}) - 128) * 4096 + (ord($c{$a + 2}) - 128) * 64 + (ord($c{$a + 3}) - 128);
$a += 4;
} else if (ord($c{$a}) >= 248 && ord($c{$a}) <= 251) {
$ud = (ord($c{$a}) - 248) * 16777216 + (ord($c{$a + 1}) - 128) * 262144 + (ord($c{$a + 2}) - 128) * 4096 + (ord($c{$a + 3}) - 128) * 64 + (ord($c{$a + 4}) - 128);
$a += 5;
} else if (ord($c{$a}) >= 252 && ord($c{$a}) <= 253) {
56 $ud = (ord($c{$a}) - 252) * 1073741824 + (ord($c{$a + 1}) - 128) * 16777216 + (ord($c{$a + 2}) - 128) * 262144 + (ord($c{$a + 3}) - 128) * 4096 + (ord($c{$a + 4}) - 128) * 64 + (ord($c{$a + 5}) - 128);
$a += 6;
} else if (ord($c{$a}) >= 254 && ord($c{$a}) <= 255) { //error
$ud = false;
}
$scill .= $prefix.$ud.";";
}
return $scill;
}
}
/*
PHP 轉 ASCII
require_once "ascii_";
*/
$aa = new ascii;
echo "
";
echo $str = $aa->encode("PHP二次開發:");
echo "
";
echo $aa->decode($str);
?>
相關文章
-
PHP ASCII碼與字符串相互轉換的方法
PHP ASCII碼與字符串如何相互轉換你知道嗎?你對PHP ASCII碼與字符串相互轉換了解嗎?下面是小編爲大家帶來的PHP ASCII碼與字符串相互轉換的方法,歡迎閱讀。 PHP ASCII碼與字符串相互轉換php代碼:<?phpclass ascii {/** -
PHPASCII碼與字符串的相互轉換的方法
PHP獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。以下是小編爲大家搜索整理的PHPASCII碼與字符串的`相互轉換的方法,希望能給大家帶來幫助,更多精彩內容請及時關注我們 -
php二進制與字符串之間的相互轉換
不知道自己無知,乃是雙倍的無知。以下是小編爲大家搜索整理php二進制與字符串之間的相互轉換,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網![代碼]php代碼:header("Content-type: text/html; chars -
如何把PHP二進制與字符串之間的相互轉換
PHP是一種 HTML 內嵌式的語言,是一種在服務器端執行的嵌入HTML文檔的腳本語言,語言的`風格有類似於C語言,被廣泛地運用。以下是小編爲大家搜索整理的如何把PHP二進制與字符串之間的相互轉換,希望能給大家帶來幫助,更多精彩 -
PHP中IP地址與整型數字互相轉換
青少年時期是人生髮展和道德品質形成的關鍵時期,瞭解並掌握青少年思想道德狀況,有針對性地加強青少年思想道德教育,引導和幫助青少年形成健康、積極的道德品質,對於青少年的健康成長成才具有非常重要的意義。按照團區委的 -
有關JavaScript 字符串與數組轉換函數
兩個自定義的實現字符串與數組相互轉換的js函數,希望能對大家有用:複製代碼 代碼如下:function StringToArray(str,substr) {/* 函數功能:字符串按照指定字符串分割轉換爲數組參數:str :需轉換的字符串substr:分割字符串 -
php數組和字符串互相轉換實例
PHP語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。下面是小編分享的php數組和字符串互相轉換實例,一起來看一下吧。 代碼如下:$array=explode(separator,$string);$string=implode(glu -
PHP如何實現Unicode和Utf-8編碼相互轉換
通過PHP實現一個函數可以對字符串進行Unicode的編碼和解碼,需要的朋友可以參考下。最近恰好要用到unicode編碼的轉換,就去查了一下php的庫函數,居然沒找到一個函數可以對字符串進行Unicode的編碼和解碼!也罷,找不到的話就 -
PHP 數組和字符串互相轉換實現方法
PHP數組和字符串互相轉換是比較常用的,下面給大家介紹PHP數組和字符串互相轉換實現方法,一起來了解一下吧! PHP數組和字符串互相轉換實現方法PHP 中由於數組和字符串這兩種變量類型是如此常用,以至於 PHP 具有兩個函 -
PHP數組和字符串互相轉換實現方法
PHP 中由於數組和字符串這兩種變量類型是如此常用,以至於 PHP 具有兩個函數,可以在字符串和數組之間互相進行轉換,就跟隨本站小編一起去了解下吧,想了解更多相關信息請持續關注我們應屆畢業生考試網!複製代碼 代碼如下:$