Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menambah Elemen Secara Bersyarat pada Tatasusunan Bersekutu dalam PHP 8.1?

Bagaimana untuk Menambah Elemen Secara Bersyarat pada Tatasusunan Bersekutu dalam PHP 8.1?

Linda Hamilton
Linda Hamiltonasal
2024-10-31 09:44:01745semak imbas

How to Conditionally Add Elements to an Associative Array in PHP 8.1?

Penambahan Elemen Tatasusunan Bersyarat

Dalam PHP, tugas menambahkan elemen secara bersyarat pada tatasusunan bersekutu boleh menjadi satu cabaran. Sebagai contoh, pertimbangkan tatasusunan berikut:

<code class="php">$arr = ['a' => 'abc'];</code>

Bagaimanakah kita boleh menambah 'b' => 'xyz' ke ​​tatasusunan ini menggunakan pernyataan array()? Pengendali ternary bukanlah pilihan yang berdaya maju dalam kes ini.

Penyelesaian PHP 8.1

Satu pendekatan yang tersedia dalam PHP 8.1 dan lebih tinggi melibatkan penggunaan pembongkaran tatasusunan:

<code class="php">$arr = [
    'foo' => 'bar',
    ...($condition ? ['baz' => 'boo'] : []),
];</code>

Dalam kod ini:

  • Pengendali ... digunakan untuk membongkar tatasusunan.
  • Pengendali ternary ($condition ? ['baz' => ' boo'] : []) secara bersyarat mengembalikan tatasusunan dengan 'baz' => 'boo' jika $condition adalah benar; jika tidak, ia mengembalikan tatasusunan kosong.
  • Pengendali pembongkaran kemudian menggabungkan hasil pengendali ternary dengan tatasusunan sedia ada.

Sintaks ini membenarkan cara yang ringkas dan elegan untuk bersyarat tambah elemen pada tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Elemen Secara Bersyarat pada Tatasusunan Bersekutu dalam PHP 8.1?. 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