⊗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हिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць