PHP unpack() फ़ंक्शन

विन्यास और उपयोग

unpack() फ़ंक्शन बाइनरी स्ट्रिंग से डाटा को अलगाता है。

व्याकरण

unpack(format,data)
पैरामीट वर्णन
format अनिवार्य।अलगाया गया डाटा को डिक्सापैक करने के लिए फॉर्मेट निर्धारित करता है。
data वैकल्पिक।अलगाया गया बाइनरी डाटा को निर्धारित करता है。

format पैरामीट के संभावित मान

  • a - NUL-padded string
  • A - SPACE-padded string
  • h - Hex string, low nibble first
  • H - Hex string, high nibble first
  • c - signed char
  • C - unsigned char
  • s - signed short (सदैव 16 बिट, मशीन बाइट आदेश)
  • S - unsigned short (सदैव 16 बिट, मशीन बाइट आदेश)
  • n - unsigned short (सदैव 16 बिट, बिग एंडियन बाइट आदेश)
  • v - unsigned short (सदैव 16 बिट, लिटिल एंडियन बाइट आदेश)
  • i - signed integer (मशीन निर्भर आकार और बाइट आदेश)
  • I - unsigned integer (मशीन निर्भर आकार और बाइट आदेश)
  • l - signed long (सदैव 32 बिट, मशीन बाइट आदेश)
  • L - unsigned long (सदैव 32 बिट, मशीन बाइट आदेश)
  • N - अनार्भिक लॉंग (हमेशा 32 बिट, बिग एंडियन बाइट आदेशक्रम)
  • V - अनार्भिक लॉंग (हमेशा 32 बिट, लिटिल एंडियन बाइट आदेशक्रम)
  • f - फ्लोट (मशीन निर्भर आकार और प्रस्तुतीकरण)
  • d - डबल (मशीन निर्भर आकार और प्रस्तुतीकरण)
  • x - नल बाइट
  • X - एक बाइट पीछे बैक अप
  • @ - नल भरने वाला निर्दिष्ट स्थान

उदाहरण

उदाहरण 1

<?php
$data = "PHP";
print_r(unpack("C*",$data));
?>

आउटपुट:

एरे
(
[1] => 80
[2] => 72
[3] => 80
)

उदाहरण 2

<?php
$data = "PHP";
print_r(unpack("C*myint",$data));
?>

आउटपुट:

एरे
(
[myint1] => 80
[myint2] => 72
[myint3] => 80
)

उदाहरण 3

<?php
$bin = pack("c2n2",0x1234,0x5678,65,66);
print_r(unpack("c2chars/n2int",$bin));
?>

आउटपुट:

एरे
(
[chars1] => 52
[chars2] => 120
[int1] => 65
[int2] => 66
)