国产探花免费观看_亚洲丰满少妇自慰呻吟_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編程:www.survivalescaperooms.com");echo "</xmp>";echo $aa->decode($str);?>

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


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

圖片精選

主站蜘蛛池模板: 靖江市| 武平县| 吉水县| 盐山县| 洛阳市| 呼玛县| 共和县| 修文县| 辽源市| 山丹县| 苍梧县| 宜宾市| 福贡县| 八宿县| 北碚区| 荣成市| 怀远县| 定西市| 新乡县| 井冈山市| 繁峙县| 合山市| 庆安县| 定陶县| 班戈县| 察雅县| 格尔木市| 丘北县| 深水埗区| 南陵县| 吐鲁番市| 拉孜县| 明水县| 阳江市| 通道| 鄂尔多斯市| 栖霞市| 宝坻区| 丹东市| 旌德县| 库伦旗|