Sobes.tech
Junior — Middle

Դուք ունե՞ք փորձ PHP-ում հատուկ մեթոդների օգտագործման, որոնք սկսվում են երկու ստորակետով։

sobes.tech AI

Պատասխան AI-ից

PHP-ում հատուկ մեթոդները, որոնք սկսվում են կրկնակի ստորակետ (__), կոչվում են կախարդական մեթոդներ: Դրանք թույլ են տալիս վերաշարադրել օբյեկտների վարքագիծը որոշ իրավիճակներում: Օրինակ՝

  • __construct() — դասի կոնստրուկտոր
  • __destruct() — դեստրուկտոր
  • __get($name) — կանչվում է, երբ մուտքագրվում է գոյություն չունեցող կամ հասանելի չհամարվող հատկություն
  • __set($name, $value) — կանչվում է, երբ նշանակվում է գոյություն չունեցող կամ հասանելի չհամարվող հատկություն
  • __call($name, $arguments) — կանչվում է, երբ կանչվում է գոյություն չունեցող մեթոդ
  • __toString() — սահմանում է օբյեկտի վարքագիծը տողին փոխարկման ժամանակ

Օրինակ՝ __get և __set օգտագործման:

class User {
    private $data = [];

    public function __get($name) {
        return $this->data[$name] ?? null;
    }

    public function __set($name, $value) {
        $this->data[$name] = $value;
    }
}

$user = new User();
$user->name = 'Иван';
echo $user->name; // Ցուցադրում է 'Иван'

Կախարդական մեթոդները թույլ են տալիս ճկուն կառավարել օբյեկտների վարքագիծը և հաճախ օգտագործվում են նախագծման նմուշների իրականացման կամ դասերի ինտերֆեյսը պարզեցնելու համար։