Rumah >pembangunan bahagian belakang >tutorial php >Bolehkah Sifat Kelas PHP Kini Dimulakan dengan Ungkapan Mudah?

Bolehkah Sifat Kelas PHP Kini Dimulakan dengan Ungkapan Mudah?

Barbara Streisand
Barbara Streisandasal
2024-10-30 14:55:26490semak imbas

Can PHP Class Properties Now be Initialized with Simple Expressions?

Ungkapan Skalar Malar: Menyelesaikan Ralat Sintaks dalam Pengisytiharan Harta Kelas PHP

Menurut dokumentasi PHP, sifat kelas boleh dimulakan dengan nilai tetap yang boleh dinilai semasa penyusunan. Walau bagaimanapun, memulakan sifat dengan ungkapan mudah seperti "4 1" secara sejarah telah mengakibatkan ralat sintaks.

Sekatan ini berpunca daripada ketidakupayaan PHP untuk menilai ungkapan tersebut semasa penyusunan, kerana ia bergantung pada maklumat masa jalan. Walau bagaimanapun, pada PHP 5.6, ciri baharu yang dipanggil ungkapan skalar malar telah muncul.

Ungkapan skalar malar membenarkan ungkapan skalar yang terdiri daripada literal angka dan rentetan atau pemalar digunakan dalam konteks yang sebelum ini nilai statik yang diperlukan. Ini termasuk pengisytiharan pemalar dan sifat, serta argumen fungsi lalai.

Oleh itu, kod berikut, yang sebelum ini menyebabkan ralat sintaks, kini sah:

<code class="php">public $var = array(
    1 => 4,
    2 => (4 + 1),
);

public $var = 4 + 1;</code>

Perubahan ini menangani pengehadan tidak membenarkan sebarang ungkapan yang dikira, tanpa mengira keupayaannya untuk dinilai pada masa penyusunan. Pengiraan mudah seperti "4 1" kini dibenarkan, membolehkan lebih fleksibiliti dalam pengisytiharan harta kelas.

Atas ialah kandungan terperinci Bolehkah Sifat Kelas PHP Kini Dimulakan dengan Ungkapan Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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