⊗ppOpMgStNEP 92 of 107 menu

PHP-ի ՕՕՊ-ում գոյություն չունեցող հատկության ընթերցում

Փորձենք գրել տվյալներ գոյություն չունեցող հատկության մեջ - սա կաշխատի.

<?php $test = new Test; $test->prop3 = 3; // գրենք 3 echo $test->prop3; // կարտածի 3 ?>

Ենթադրենք, մենք չենք ուզում թույլատրել գրել գոյություն չունեցող հատկություններում: Եվ, ընդհանրապես, ուզում ենք թույլատրել գրել միայն prop1 և prop2 հատկություններում:

Սա հեշտ է անել - բավական է __set մեթոդում ավելացնել համապատասխան պայման.

<?php class Test { private $prop1; private $prop2; public function __set($property, $value) { // Գրենք պայման. if ($property == 'prop1' or $property == 'prop2') { $this->$property = $value; } } public function __get($property) { return $this->$property; } } ?>

Եթե նման հատկությունները շատ լինեն, ապա այնքան էլ հարմար չէ դրանք բոլորը թվարկել պայմանում:

Եկեք գրենք գրելու համար թույլատրված հատկությունները մասիվի մեջ և ստուգենք հատկության առկայությունը այդ մասիվում in_array ֆունկցիայի միջոցով.

<?php class Test { private $prop1; private $prop2; public function __set($property, $value) { $properties = ['prop1', 'prop2']; // թույլատրված հատկությունները if (in_array($property, $properties)) { $this->$property = $value; } } public function __get($property) { return $this->$property; } } ?>
Հայերեն
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-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել