356 of 410 menu

__wakeup metodi

__wakeup metodi PHPda sehrli metod bo'lib, ob'ekt deserializatsiya qilinganda avtomatik ravishda chaqiriladi. U ob'ekt resurslarini tiklash yoki deserializatsiyadan keyin qo'shimcha amallarni bajarish imkonini beradi.

Sintaksis

public function __wakeup(): void { // kod }

Misol

__wakeup metodiga ega bo'lgan klass misoli, u ma'lumotlar bazasi bilan ulanishni tiklaydi:

<?php class DatabaseConnection { private $connection; public function __construct() { $this->connect(); } private function connect() { $this->connection = 'db_connected'; } public function __sleep() { return []; } public function __wakeup() { $this->connect(); } } $db = new DatabaseConnection(); $serialized = serialize($db); $unserialized = unserialize($serialized); ?>

Misol

Deserializatsiyadan keyin vaqtincha fayllarni tiklash misoli:

<?php class TempFileHandler { private $tempFiles = []; public function addTempFile($file) { $this->tempFiles[] = $file; } public function __wakeup() { foreach ($this->tempFiles as $file) { if (file_exists($file)) { unlink($file); } } $this->tempFiles = []; } } $handler = new TempFileHandler(); $handler->addTempFile('temp1.txt'); $serialized = serialize($handler); $unserialized = unserialize($serialized); ?>

Shuningdek qarang

  • __sleep metodi,
    ob'ket serializatsiya qilinishidan oldin chaqiriladi
  • __construct metodi,
    ob'ekt yaratilganda chaqiriladi
Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish