355 of 410 menu

Методи __sleep

Методи __sleep ба таври худкор ҳангоми сериализатсия кардани объект бо истифода аз функсияи serialize даъват карда мешавад. Ин метод бояд массиви номҳои хусусиятҳоеро баргардонад, ки бояд дар намоиши сериализатсияшудаи объект дохил карда шаванд.

Синтаксис

public function __sleep(): array;

Мисол

Классеро эҷод карда ва методи __sleep-ро татбиқ кунем, то фақат хусусиятҳои муайяншуда сериализатсия карда шаванд:

<?php class User { public $name = 'John'; public $age = 30; private $password = '12345'; public function __sleep() { return ['name', 'age']; } } $user = new User(); echo serialize($user); ?>

Натиҷаи иҷрои код:

'O:4:"User":2:{s:4:"name";s:4:"John";s:3:"age";i:30;}'

Мисол

Истифодаи __sleep барои истисно кардани додаҳои махфӣ аз сериализатсия:

<?php class Account { public $login = 'admin'; private $password = 'secret'; public $email = 'admin@example.com'; public function __sleep() { return ['login', 'email']; } } $account = new Account(); echo serialize($account); ?>

Натиҷаи иҷрои код:

'O:7:"Account":2:{s:5:"login";s:5:"admin";s:5:"email";s:17:"admin@example.com";}'

Инчунин нигаред

  • методи __wakeup,
    ки ҳангоми десериализатсия кардани объект даъват карда мешавад
  • функсияи serialize,
    ки додаҳоро сериализатсия мекунад
Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан