PHP簡短而安全的陣列遍歷

藏色散人
發布: 2023-04-08 12:42:01
轉載
2289 人瀏覽過

PHP簡短而安全的陣列遍歷

在寫PHP 的陣列遍歷的時候,我們通常會這樣寫:

foreach ($definition['keys'] as $id => $val) {
  // ...
}
登入後複製

但其實這樣會引起一個重要的問題:如果$definition['keys '] 沒有定義的話,這個時候的陣列變數(也就是foreach)就會出現錯誤。

推薦:《php訓練

所以,我們進階成這個樣子:

if (!empty($definition['keys']) {
  foreach ($definition['keys'] as $id => $val) {
    // ...
  }
}
登入後複製

是不是很常見?我們只要在外邊再包含一層 if 判斷就好了。這樣能夠確保數組的安全遍歷。

不過這樣還沒有達到簡短的需求,所以藉助PHP7 的?? 便利,我們可以寫成這個樣子:

foreach ($definition['keys'] ?? [] as $id => $val) {
  // ...
}
登入後複製

是不是很neat ! 哈哈哈,那麼在這裡理解??可以這樣理解:

$a = is_null($b) ? $default : $b;
$a = $b ?? $default;
登入後複製

相當於做了一個is_null($b) 的運算。

更多程式相關內容,請關注php中文網程式入門欄位!

以上是PHP簡短而安全的陣列遍歷的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板