国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP實現ASCII碼與字符串相互轉換的方法

2024-05-04 23:56:55
字體:
來源:轉載
供稿:網友

本文實例講述了PHP實現ASCII碼與字符串相互轉換的方法。分享給大家供大家參考,具體如下:

<?phpclass 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) {        $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_class.php";*/$aa = new ascii;echo "<xmp>";echo $str = $aa->encode("PHP編程:m.survivalescaperooms.com");echo "</xmp>";echo $aa->decode($str);?>

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 吴忠市| 城口县| 中方县| 德令哈市| 乐清市| 花莲市| 壶关县| 岳阳市| 天水市| 绥棱县| 井冈山市| 南漳县| 建湖县| 枣强县| 深泽县| 罗甸县| 嘉善县| 固原市| 额敏县| 长泰县| 贵港市| 遂宁市| 定兴县| 义乌市| 临城县| 兴安盟| 万宁市| 盐源县| 余庆县| 奉节县| 沛县| 财经| 福泉市| 滁州市| 肥乡县| 霸州市| 永嘉县| 隆尧县| 正宁县| 梅河口市| 邓州市|