unpack()

PHP unpack() funksiyasi

❮ PHP turli xil funksiyalar ma’lumotnomasi

Misol

Ikkilik stringdan ma’lumotlarni ochib oling:

<?php $data = "PHP"; print_r(unpack("C*",$data)); ?>
O‘zingiz sinab ko‘ring »

ULASHISH

Ta’rif va qo‘llanilishi

unpack() funksiyasi ikkilik stringdan ma’lumotlarni ochib oladi.


Sintaksis

unpack(format,data)

Parametr qiymatlari

Parametr Tavsif
format Majburiy. Ma’lumotlarni ochib olishda foydalaniladigan formatni belgilaydi.

Mumkin bo‘lgan qiymatlar:

  • a - NUL bilan to‘ldirilgan string
  • A - bo‘sh joy (SPACE) bilan to‘ldirilgan string
  • h - o‘n oltilik (hex) string, avval kichik yarim bayt (low nibble)
  • H - o‘n oltilik (hex) string, avval katta yarim bayt (high nibble)
  • c - ishorali char (signed char)
  • C - ishorasiz char (unsigned char)
  • s - ishorali short (har doim 16 bit, mashinaning bayt tartibi)
  • S - ishorasiz short (har doim 16 bit, mashinaning bayt tartibi)
  • n - ishorasiz short (har doim 16 bit, big endian bayt tartibi)
  • v - ishorasiz short (har doim 16 bit, little endian bayt tartibi)
  • i - ishorali integer (hajmi va bayt tartibi mashinaga bog‘liq)
  • I - ishorasiz integer (hajmi va bayt tartibi mashinaga bog‘liq)
  • l - ishorali long (har doim 32 bit, mashinaning bayt tartibi)
  • L - ishorasiz long (har doim 32 bit, mashinaning bayt tartibi)
  • N - ishorasiz long (har doim 32 bit, big endian bayt tartibi)
  • V - ishorasiz long (har doim 32 bit, little endian bayt tartibi)
  • q - ishorali long long (har doim 64 bit, mashinaning bayt tartibi)
  • Q - ishorasiz long long (har doim 64 bit, mashinaning bayt tartibi)
  • J - ishorasiz long long (har doim 64 bit, big endian bayt tartibi)
  • P - ishorasiz long long (har doim 64 bit, little endian bayt tartibi)
  • f - float (hajmi va ifodalanishi mashinaga bog‘liq)
  • g - float (hajmi mashinaga bog‘liq, little endian bayt tartibi)
  • G - float (hajmi mashinaga bog‘liq, big endian bayt tartibi)
  • d - double (hajmi va ifodalanishi mashinaga bog‘liq)
  • e - double (hajmi mashinaga bog‘liq, little endian bayt tartibi)
  • E - double (hajmi mashinaga bog‘liq, big endian bayt tartibi)
  • x - NUL bayt
  • X - bir bayt orqaga qaytish
  • Z - NUL bilan to‘ldirilgan string
  • @ - mutlaq pozitsiyagacha NUL bilan to‘ldirish
data Majburiy. Ochib olinadigan ikkilik ma’lumotlarni belgilaydi
offset Ixtiyoriy. Ochib olishni qayerdan boshlashni belgilaydi. Standart qiymat: 0.


Texnik tafsilotlar

Qaytariladigan qiymat: Muvaffaqiyatli bo‘lsa massiv, muvaffaqiyatsiz bo‘lsa FALSE qaytaradi.
PHP versiyasi: 4+
O‘zgarishlar tarixi: PHP 7.2 - float va double endi big endian va small endian’ni qo‘llab-quvvatlaydi.
PHP 7.1 - Ixtiyoriy offset parametri qo‘shildi.
PHP 5.5.0 - Perl bilan moslik uchun quyidagi o‘zgarishlar kiritildi: "a" kodi endi oxiridagi NULL baytlarni saqlab qoladi.
"A" kodi endi oxiridagi barcha ASCII bo‘sh joy belgilarini olib tashlaydi.
NULL bilan to‘ldirilgan stringlar uchun "Z" kodi qo‘shildi, u oxiridagi NULL baytlarni olib tashlaydi.

Ko‘proq misollar

Misol

Ma’lumotlarni ochib oling:

<?php $data = "PHP"; print_r(unpack("C*myint",$data)); ?>
O‘zingiz sinab ko‘ring »

Misol

Ma’lumotlarni ochib oling:

<?php $bin = pack("c2n2",0x1234,0x5678,65,66); print_r(unpack("c2chars/n2int",$bin)); ?>
O‘zingiz sinab ko‘ring »

❮ PHP turli xil funksiyalar ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!