PHP의 pack() 함수는 데이터를 바이너리 형식으로 변환하는 데 사용되는 함수입니다. 이 기능을 사용하면 다양한 애플리케이션 시나리오에 맞게 데이터를 지정된 형식으로 패키징할 수 있습니다. 이 기사에서는 pack() 함수의 기본 사용법과 일반적인 형식 지침을 소개합니다.
pack() 함수의 구문은 다음과 같습니다.
string pack ( string $format , mixed $args1 [, mixed $... ] )
첫 번째 매개변수는 데이터 패키징을 위한 형식 설명 문자열입니다. 형식 문자열은 하나 이상의 형식 코드를 포함할 수 있으며 최종 결과는 다음과 같습니다. 특정 순서로 압축된 이진 문자열입니다.
다음은 일반적으로 사용되는 형식 코드입니다.
형식 코드 | 의미 |
---|---|
a | 는 마지막 null을 포함하여 null 바이트로 채워집니다. |
A | 가득 공백, 마지막 공백 포함 |
h | 소문자 16진수 |
H | 대문자 16진수 |
i | 크기가 4바이트인 부호 있는 정수 |
I | 크기가 4바이트인 부호 없는 정수 |
l | 크기 4바이트의 부호 있는 정수(i와 동일) |
L | No 부호 있는 정수, 크기 4바이트(I와 동일) |
n | I와 동일하지만 강제 적용 네트워크 바이트 순서 |
N | V와 동일하지만 네트워크 바이트 순서를 적용합니다. 장 순서 |
V | 크기가 4바이트인 부호 없는 정수 |
s | 크기가 2바이트인 서명된 짧은 정수 |
S | 부호 없는 짧은 정수, 크기 2바이트 |
c | 부호 있는 문자, 크기 1바이트 |
C | 부호 없는 문자, 크기 1바이트 |
f | 단정밀도 부동 소수점 수 크기가 4바이트 |
d | 크기가 8바이트인 이중 정밀도 부동 소수점 숫자 |
다음은 간단한 예입니다.
$format = "A5a5a5a5a5"; // 5个空格后面跟5个以null填充的字符 $args = array("Hello", "World", "PHP", "Is", "Fun"); echo bin2hex(pack($format, ...$args)); // 输出 48656c6c6f00576f726c640050485049732046756e
이 예에서는 형식 코드를 사용합니다. A
和 a
来打包字符串, ...$args
구문은 다음과 같습니다. PHP 5.6의 변수 확장 구문은 배열을 여러 매개변수로 분할하고 이를 함수에 차례로 전달하는 것입니다.
마찬가지로 pack() 함수는 일부 특수 형식 코드도 지원합니다. 다음은 소개입니다.
형식 코드 | 의미 |
---|---|
x | NUL 바이트 |
X | Shift 마지막 문자에 추가로 |
@ | 패딩을 특정 길이로 |
위 형식 코드는 보다 유연한 데이터 패키징 작업을 위한 기초입니다.
요약하자면 pack() 함수는 데이터를 바이너리 형식으로 빠르게 변환할 수 있는 매우 유용한 함수입니다. 이 기능과 공통 형식 코드를 능숙하게 사용하면 많은 편리함을 찾을 수 있습니다.
위 내용은 PHP Pack 메소드의 기본 사용법에 대해 이야기합시다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!