Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menetapkan Nilai Secara Dinamik kepada Sifat Kelas dalam PHP?

Bagaimanakah Saya Boleh Menetapkan Nilai Secara Dinamik kepada Sifat Kelas dalam PHP?

Mary-Kate Olsen
Lepaskan: 2024-12-01 07:30:15
asal
651 orang telah melayarinya

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

Penugasan Nilai Harta Kelas Dinamik dalam PHP

Mentakrifkan sifat kelas dengan nilai tetap ialah pendekatan standard dalam PHP. Walau bagaimanapun, dalam senario tertentu, anda mungkin perlu menetapkan nilai secara dinamik.

Contoh:

Pertimbangkan kod berikut:

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;
}
Salin selepas log masuk

Ini kod cuba untuk menetapkan nama penuh dan sifat totalBal secara dinamik berdasarkan nilai sifat lain. Walau bagaimanapun, ia mengakibatkan ralat penghuraian disebabkan penggunaan $this dalam sifat peringkat kelas.

Penyelesaian:

Untuk menetapkan nilai sifat kelas secara dinamik, letakkan kod tugasan dalam pembina kelas. Contohnya:

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;
    }
}
Salin selepas log masuk

Penjelasan:

Sifat kelas tidak boleh diberikan nilai dinamik semasa pengisytiharan. Menurut manual PHP, permulaan mestilah nilai malar yang dinilai pada masa penyusunan. Dengan menggunakan pembina, nilai boleh diberikan secara dinamik semasa penciptaan objek.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Nilai Secara Dinamik kepada Sifat Kelas dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan