356 of 410 menu

__wakeup մեթոդը

__wakeup մեթոդը PHP-ի մոգական մեթոդ է, որը ավտոմատ կերպով կանչվում է օբյեկտի դեսերիալիզացիայի ժամանակ: Այն թույլ է տալիս վերականգնել օբյեկտի ռեսուրսները կամ կատարել լրացուցիչ գործողություններ դեսերիալիզացիայից հետո:

Շարահյուսություն

public function __wakeup(): void { // կոդ }

Օրինակ

__wakeup մեթոդով դասի օրինակ, որն վերականգնում է կապը տվյալների բազայի հետ.

<?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); ?>

Օրինակ

Ժամանակավոր ֆայլերի վերականգնման օրինակ դեսերիալիզացիայից հետո.

<?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); ?>

Տես նաև

  • __sleep մեթոդը,
    որը կանչվում է օբյեկտի սերիալիզացիայից առաջ
  • __construct մեթոդը,
    որը կանչվում է օբյեկտի ստեղծման ժամանակ
Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել