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 )