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

Bagaimana untuk Menambah Elemen Secara Bersyarat pada Array dalam PHP 8.1?

DDD
DDDasal
2024-11-01 11:55:02929semak imbas

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

Menambahkan Elemen Bersekutu Bersyarat pada Tatasusunan dalam PHP

Apabila memanipulasi tatasusunan dalam PHP, anda mungkin menghadapi senario di mana penambahan elemen tertentu bergantung pada tertentu syarat. Sebagai contoh, anda mungkin mahu memasukkan elemen dengan kunci dan nilai tertentu hanya jika keadaan tertentu bernilai benar.

Masalah Asal:

Pertimbangkan tatasusunan berikut :

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

Anda mahu menambah elemen baharu secara bersyarat dengan kekunci 'b' dan nilai 'xyz' pada tatasusunan ini menggunakan pernyataan tatasusunan(). Walau bagaimanapun, pengendali ternary tidak membenarkan penambahan bersyarat sedemikian.

Penyelesaian dalam PHP 8.1:

Dengan kemunculan PHP 8.1, anda boleh mencapai penambahan elemen bersyarat ini menggunakan pembongkaran tatasusunan:

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

Sintaks ini membolehkan anda membongkar tatasusunan dalam tatasusunan sedia ada berdasarkan penilaian keadaan. Dalam kes ini, jika $condition adalah benar, tatasusunan ['baz' => 'boo'] akan digabungkan menjadi $arr. Jika tidak, ia akan dilangkau.

Penyelesaian ini memanfaatkan operator spread baharu (...) yang diperkenalkan dalam PHP 8.1, yang membolehkan membongkar jujukan (termasuk tatasusunan) dalam pelbagai konteks.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Elemen Secara Bersyarat pada Array 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