Junior — Middle
Программалоодо 'сыйырчы функциялар' деген эмне экенин түшүндүрө аласызбы?
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; // Иван
Мындай жол менен, сыйырдуу ыкмалар объекттердин жүрүм-турумун ийкемдүү башкарууга жана алардын ишин белгилүү сценарийлерде жеңилдетүүгө мүмкүндүк берет.