欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP字符串与字节转换示例

程序员文章站 2024-01-17 22:10:46
...
refer:http://www.php230.com/1410667081.html
/** 

* byte数组与字符串转化类 

*/classBytes {/** 

* 转换一个String字符串为byte数组 

* @param $str 需要转换的字符串 

* @param $bytes 目标byte数组 

* @author Zikie 

*/publicstaticfunctiongetBytes($string) {$bytes = array(); 
        for($i = 0; $i $string); $i++){ 
             $bytes[] = ord($string[$i]); 
        } 
        return$bytes; 
    } 


/** 

* 将字节数组转化为String类型的数据 

* @param $bytes 字节数组 

* @param $str 目标字符串 

* @return 一个String类型的数据 

*/publicstaticfunctiontoStr($bytes) {$str = ''; 
        foreach($bytesas$ch) { 
            $str .= chr($ch); 
        } 

           return$str; 
    } 


/** 

* 转换一个int为byte数组 

* @param $byt 目标byte数组 

* @param $val 需要转换的字符串 

* 

*/publicstaticfunctionintegerToBytes($val) {$byt = array(); 
        $byt[0] = ($val & 0xff); 
        $byt[1] = ($val >> 8 & 0xff); 
        $byt[2] = ($val >> 16 & 0xff); 
        $byt[3] = ($val >> 24 & 0xff); 
        return$byt; 
    } 


/** 

* 从字节数组中指定的位置读取一个Integer类型的数据 

* @param $bytes 字节数组 

* @param $position 指定的开始位置 

* @return 一个Integer类型的数据 

*/publicstaticfunctionbytesToInteger($bytes, $position) {$val = 0; 
        $val = $bytes[$position + 3] & 0xff; 
        $val 8; 
        $val |= $bytes[$position + 2] & 0xff; 
        $val 8