⊗ppOpMgStNEP 92 of 107 menu

PHP OOP에서 존재하지 않는 속성 읽기

존재하지 않는 속성에 데이터를 기록해 보겠습니다. 이것은 작동할 것입니다:

<?php $test = new Test; $test->prop3 = 3; // 3을 기록합니다 echo $test->prop3; // 3을 출력합니다 ?>

우리가 존재하지 않는 속성에 쓰는 것을 허용하지 않기 원한다고 가정해 봅시다. 그리고 일반적으로 prop1prop2 속성에만 쓰기를 허용하기를 원합니다.

이것은 쉽게 할 수 있습니다 - __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
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부