⊗ppOpMgStNEP 92 of 107 menu

PHPda OOPda mavjud bo'lmagan xususiyatni o'qish

Keling, mavjud bo'lmagan xususiyatga ma'lumot yozishga harakat qilaylik - bu ishlaydi:

<?php $test = new Test; $test->prop3 = 3; // 3 ni yozamiz echo $test->prop3; // 3 ni chiqaradi ?>

Faraz qilaylik, biz mavjud bo'lmagan xususiyatlarga yozishga ruxsat bermaymiz. Va, umuman, faqat prop1 va prop2 xususiyatlariga yozishga ruxsat bermoqchimiz.

Buni qilish oson - __set metodida mos shartni qo'shish kifoya:

<?php class Test { private $prop1; private $prop2; public function __set($property, $value) { // Shart yozamiz: if ($property == 'prop1' or $property == 'prop2') { $this->$property = $value; } } public function __get($property) { return $this->$property; } } ?>

Agar bunday xususiyatlar ko'p bo'lsa, ularning barchasini shartda sanab o'tish unchalik qulay emas.

Keling, yozishga ruxsat berilgan xususiyatlarni massivga yozamiz va xususiyatning mavjudligini in_array funksiyasi yordamida tekshiramiz:

<?php class Test { private $prop1; private $prop2; public function __set($property, $value) { $properties = ['prop1', 'prop2']; // ruxsat berilgan xususiyatlar if (in_array($property, $properties)) { $this->$property = $value; } } public function __get($property) { return $this->$property; } } ?>
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