在PHP 中向數組添加條件關聯元素
在PHP 中操作數組時,您可能會遇到添加特定元素取決於某些條件的情況狀況。例如,您可能希望僅當特定條件計算為 true 時才包含具有特定鍵和值的元素。
原始問題:
考慮以下陣列:
<code class="php">$arr = ['a' => 'abc'];</code>
您想要使用array() 語句有條件地將鍵為「b ”、值為“xyz”的新元素加入到此數組中。然而,三元運算子不允許這樣的條件添加。
PHP 8.1 中的解:
隨著PHP 8.1 的出現,你可以實現這種條件元素添加使用數組解包:
<code class="php">$condition = true; // Replace with your actual condition $arr = [ 'foo' => 'bar', ...($condition ? ['baz' => 'boo' ] : []), ];</code>
此語法可讓您根據條件的評估在現有陣列中解包數組。在這種情況下,如果 $condition 為 true,則陣列 ['baz' => 'boo'] 將合併到 $arr 中。否則,它將被跳過。
此解決方案利用 PHP 8.1 中引入的新擴充運算子 (...),它可以在各種上下文中解包序列(包括數組)。
以上是如何在 PHP 8.1 中有條件地將元素加入陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!