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

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

PHPz
PHPz원래의
2023-04-20 13:53:461077검색

PHP에서는 여러 가지 방법을 사용하여 문자열을 바이트 배열로 변환할 수 있습니다. 이 기사에서는 가장 일반적인 두 가지 방법에 중점을 둘 것입니다.

방법 1: str_split 함수 사용

str_split(string$string, int$split_length = 1): 문자열을 하위 문자열로 분할하여 배열에 넣고 배열을 반환합니다. 각 문자열의 길이는 Split_length 매개변수에 지정된 길이입니다. Split_length를 지정하지 않으면 기본값은 1입니다.

다음은 문자열을 바이트 배열로 변환하는 샘플 코드입니다.

$str = "Hello World!";
$bytes = str_split($str);

foreach($bytes as $byte) {
    echo ord($byte) . " ";
}

이 샘플 코드에서는 ord 함수를 사용하여 각 문자를 ASCII 코드로 변환하고 foreach 루프를 사용하여 바이트 배열을 무대 위 컨트롤에 인쇄했습니다. 출력은 다음과 같습니다.

72 101 108 108 111 32 87 111 114 108 100 33

방법 2: unpack 함수 사용

이 방법을 사용하려면 pack 함수를 사용하여 문자열을 이진 데이터로 압축해야 합니다. 또한 unpack 함수를 사용할 때는 압축된 데이터 유형을 지정하고 반환 값을 바이트 배열로 변환해야 합니다.

샘플 코드는 다음과 같습니다.

$str = "Hello World!";
$bytes = unpack('C*', pack('H*', bin2hex($str)));

foreach($bytes as $byte) {
    echo $byte . " ";
}

이 샘플 코드에서는 bin2hex를 사용하여 문자열을 16진수 문자열로 변환한 다음 pack을 사용하여 이진 데이터로 압축했습니다. unpack을 사용할 때 C 유형 공유 기호를 사용하여 데이터의 압축을 풀고 foreach 루프를 사용하여 바이트 배열을 인쇄합니다.

출력은 다음과 같습니다:

72 101 108 108 111 32 87 111 114 108 100 33

요약하자면, PHP에서 문자열을 바이트 배열로 변환하는 두 가지 방법이 있습니다. 다양한 암호화/암호 해독 작업을 수행해야 하는 개발자에게는 이러한 방법이 어떻게 작동하는지 이해하는 것이 중요합니다.

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

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