라이브러리

[PHP] Yac::__set - 세터




PHP의 Yac::__set


PHP의 Yac::__set은 Magic Method 중 하나로, 객체의 속성을 동적으로 생성하거나 변경할 수 있습니다.

# Magic Method


Magic Method는 PHP에서 특별한 의미를 가진 메서드입니다. PHP는 이러한 메서드가 호출되면 특정 동작을 수행합니다. Magic Method는 두 개의 밑줄(__)로 시작하며, 예를 들어 `__construct`, `__destruct`, `__set`, `__get` 등이 있습니다.

# Yac::__set


Yac::__set은 객체의 속성을 동적으로 생성하거나 변경할 수 있습니다. 이 메서드는 다음과 같은 형태로 호출됩니다.

#hostingforum.kr
php

public function __set($name, $value)



- `$name` : 객체의 속성 이름입니다.
- `$value` : 객체의 속성 값입니다.

# 예제


다음 예제는 Yac::__set을 사용하여 객체의 속성을 동적으로 생성하거나 변경하는 방법을 보여줍니다.

#hostingforum.kr
php

class Person {

    private $name;

    private $age;



    public function __construct() {

        $this->name = '';

        $this->age = 0;

    }



    public function __set($name, $value) {

        if ($name == 'name') {

            $this->name = $value;

        } elseif ($name == 'age') {

            $this->age = $value;

        } else {

            throw new Exception("Invalid property: $name");

        }

    }



    public function getName() {

        return $this->name;

    }



    public function getAge() {

        return $this->age;

    }

}



$person = new Person();

$person->name = 'John Doe';

$person->age = 30;



echo $person->getName() . "
"; // John Doe

echo $person->getAge() . "
"; // 30



# 예제 설명


위 예제에서, `Person` 클래스는 `__set` 메서드를 사용하여 객체의 `name`과 `age` 속성을 동적으로 생성하거나 변경합니다. `__set` 메서드는 객체의 속성을 변경할 때, 속성 이름과 값을 검사하여 올바른 속성을 변경합니다. 만약 올바른 속성이 아닌 속성을 변경하려고 하면, 예외를 발생시킵니다.

# 참고


Yac::__set은 객체의 속성을 동적으로 생성하거나 변경할 수 있으므로, 주의하여 사용해야 합니다. 객체의 속성을 변경할 때, 올바른 속성을 변경해야 하며, 올바른 속성이 아닌 속성을 변경하려고 하면 예외를 발생시켜야 합니다.

결론


PHP의 Yac::__set은 객체의 속성을 동적으로 생성하거나 변경할 수 있습니다. 이 메서드는 Magic Method 중 하나로, 객체의 속성을 변경할 때, 올바른 속성을 변경해야 하며, 올바른 속성이 아닌 속성을 변경하려고 하면 예외를 발생시켜야 합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 28 페이지

검색

게시물 검색