> 백엔드 개발 > PHP 튜토리얼 > PHP에서 클래스 속성에 값을 동적으로 할당하려면 어떻게 해야 합니까?

PHP에서 클래스 속성에 값을 동적으로 할당하려면 어떻게 해야 합니까?

Mary-Kate Olsen
풀어 주다: 2024-12-01 07:30:15
원래의
660명이 탐색했습니다.

How Can I Dynamically Assign Values to Class Properties in PHP?

PHP의 동적 클래스 속성 값 할당

상수 값으로 클래스 속성을 정의하는 것은 PHP의 표준 접근 방식입니다. 그러나 특정 시나리오에서는 값을 동적으로 할당해야 할 수도 있습니다.

예:

다음 코드를 고려하세요.

class user {
    public $firstname = "jing";
    public $lastname  = "ping";
    public $balance   = 10;
    public $newCredit = 5;
    public $fullname  = $this->firstname.' '.$this->lastname;
    public $totalBal  = $this->balance+$this->newCredit;
}
로그인 후 복사

이것은 코드는 다른 속성의 값을 기반으로 fullname 및 totalBal 속성을 동적으로 할당하려고 시도합니다. 그러나 클래스 수준 속성 내에서 $this를 사용하면 구문 분석 오류가 발생합니다.

해결책:

클래스 속성 값을 동적으로 할당하려면 클래스 생성자 내의 할당 코드. 예:

class user {
    private $firstname;
    private $lastname;
    private $balance;
    private $newCredit;
    private $fullname;
    private $totalBal;
    
    public function __construct() {
        $this->firstname = "jing";
        $this->lastname  = "ping";
        $this->balance   = 10;
        $this->newCredit = 5;
        $this->fullname  = $this->firstname.' '.$this->lastname;
        $this->totalBal  = $this->balance+$this->newCredit;
    }
}
로그인 후 복사

설명:

선언 중에 클래스 속성에 동적 값을 할당할 수 없습니다. PHP 매뉴얼에 따르면 초기화는 컴파일 타임에 평가되는 상수 값이어야 합니다. 생성자를 사용하면 객체 생성 시 값을 동적으로 할당할 수 있습니다.

위 내용은 PHP에서 클래스 속성에 값을 동적으로 할당하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿