>  기사  >  백엔드 개발  >  PHP에서 바이트 배열을 문자열로 변환하는 방법

PHP에서 바이트 배열을 문자열로 변환하는 방법

PHPz
PHPz원래의
2023-04-18 10:18:10810검색

PHP에서는 pack() 함수를 사용하여 바이트 배열을 문자열로 변환하거나 implode() 함수를 사용하여 지정된 구분 기호로 연결된 문자열로 변환할 수 있습니다.

pack() 함수 사용 형식은 다음과 같습니다.

$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f);
$str = pack('C*', ...$byteArray);
echo $str; //输出:hello

위 코드에서 $byteArray는 바이트 값을 포함하는 배열입니다. pack() 함수를 호출하고 'C*' 형식 문자열을 전달하면 $byteArray가 변환됩니다. 문자열입니다. 'C'는 부호 없는 바이트(즉, 8비트 부호 없는 정수)로 패킹하는 것을 의미하고, '*'는 모든 요소를 ​​패킹하는 것을 의미합니다. ...$byteArray를 사용하여 $byteArray의 요소를 함수 매개변수로 전달합니다.

implode() 함수는 다음과 같이 사용할 수 있습니다:

$byteArray = array(0x68, 0x65, 0x6c, 0x6c, 0x6f);
$str = implode('', array_map('chr', $byteArray));
echo $str; //输出:hello

이 예에서 array_map() 함수는 $byteArray의 각 요소에 적용되고 chr() 함수는 각 바이트를 해당 ASCII 문자로 변환하는 데 사용됩니다. . 그런 다음 빈 문자열을 구분 기호로 사용하여 각 문자를 문자열로 연결합니다.

또한 PHP 7.2.0 이상에서는 hex2bin() 함수를 사용하여 16진수 문자열을 이진수 데이터로 변환할 수 있습니다.

$str = '68656c6c6f';
$byteArray = hex2bin($str);
echo $byteArray; //输出:hello

간단히 말하면, PHP에서 바이트 배열을 문자열로 변환하는 방법은 여러 가지가 있습니다. 자신에게 맞는 방법을 선택할 수 있습니다.

위 내용은 PHP에서 바이트 배열을 문자열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.