PHP는 서버측 프로그래밍 언어로서 개발자가 빠르게 개발할 수 있는 풍부한 기능 라이브러리를 갖추고 있습니다. PHP는 16진수를 문자열로 변환하는 함수를 제공합니다. 아래에서 이 함수를 소개하겠습니다.
PHP에서 16진수를 문자열로 변환하는 함수는 hex2bin()입니다. 그 기능은 16진수를 문자열로 변환하는 것입니다.
예제 코드:
$string = hex2bin('546869732069732061207465737420737472696e67'); echo $string;
실행 결과:
This is a test string
위의 예에서 hex2bin() 함수는 16진수 문자열 '546869732069732061207465737420737472696e67'을 'This is a test'로 변환합니다. 문자열'. 보시다시피 변환된 문자열은 원래 16진수 문자열과 동일합니다.
hex2bin() 함수를 호출할 때 전달된 16진수가 짝수가 아닌 경우(즉, 2로 나눌 수 없는 경우) PHP는 자동으로 끝에 '0' 문자를 추가합니다. 문자열을 짝수로 만든 다음 변환합니다.
샘플 코드:
$string = hex2bin('546869732069732061207465737420737472696e670'); echo $string;
실행 결과:
테스트 문자열입니다
16진수 문자열 '546869732069732061207465737420737472696e670' 끝에 문자 '0'이 자동으로 추가됩니다.
hex2bin() 함수 외에도 PHP에는 16진수를 문자열로 변환할 수 있는 다음 두 가지 함수가 있습니다.
형식 설명:
H - 16진수 문자열(빅 엔디안)
h - 16진수 문자열(로우 엔디안)
N - Unsigned long(네트워크 바이트 순서)
n - Unsigned short(네트워크 바이트 순서)
V - Unsigned long (native byte order)
v - Unsigned short (native byte order)
샘플 코드:
$string = pack("H*", '546869732069732061207465737420737472696e67'); echo $string;
실행 결과:
테스트 문자열입니다
이 코드는 hex2bin() 함수 사용과 유사합니다. 차이점은 pack() 함수가 다양한 형식에 따라 16진수 문자열을 구문 분석할 수 있다는 것입니다.
샘플 코드:
$str = "546869732069732061207465737420737472696e67"; $len = strlen($str); $res = ""; for ($i = 0; $i < $len; $i += 2) { $res .= chr(hexdec(substr($str, $i, 2))); } echo $res;
실행 결과:
테스트 문자열입니다
위의 예에서는 먼저 16진수 문자열 $str을 두 개의 문자 그룹으로 분할했으므로 $ str의 길이는 짝수입니다. for 루프를 통해 각 그룹을 반복하고 hexdec() 함수를 호출하여 이를 십진수로 변환한 다음 chr() 함수를 호출하여 해당 문자로 변환하고 해당 문자를 $res 문자열에 추가합니다.
요약하자면, PHP는 16진수를 문자열로 변환하는 다양한 방법을 제공합니다. 개발자는 실제 필요에 따라 적절한 방법을 선택할 수 있습니다.
위 내용은 PHP에서 16진수를 문자열 함수로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!