首頁 > 後端開發 > php教程 > 如何確定數組中元素是否存在以避免錯誤

如何確定數組中元素是否存在以避免錯誤

Linda Hamilton
發布: 2024-10-19 06:20:02
原創
627 人瀏覽過

How to Determine the Existence of Elements in an Array to Avoid Errors

確定數組元素是否存在

檢查數組中是否存在元素時,您描述的方法可能會導致 undefined索引錯誤。若要有效解決此問題,您可以使用 isset 建構或 array_key_exists 函數。

使用 isset

isset 是速度最佳化的首選選項。它檢查元素是否存在,無論其值如何。但是,對於已明確設定為 NULL 的元素,它會傳回 false。

使用 array_key_exists

array_key_exists 決定數組中是否存在特定鍵。與 isset 不同,它不考慮與鍵關聯的值。

範例:

考慮以下陣列:

<code class="php">$a = array(
    123 => 'glop',
    456 => null,
);</code>
登入後複製

使用isset 測試:

<code class="php">var_dump(isset($a[123])); // true (key exists with a non-null value)
var_dump(isset($a[456])); // false (key exists with a null value)
var_dump(isset($a[789])); // false (key does not exist)</code>
登入後複製
使用isset 進行測試:

使用isset 測試:

<code class="php">var_dump(array_key_exists(123, $a)); // true (key exists regardless of value)
var_dump(array_key_exists(456, $a)); // true (key exists regardless of value)
var_dump(array_key_exists(789, $a)); // false (key does not exist)</code>
登入後複製

使用array_key_exists 進行測試:

<code class="php">if (!isset(self::$instances[$instanceKey])) {
    $instances[$instanceKey] = $theInstance;
}</code>
登入後複製
程式碼更新:在您的程式碼中,您可以使用isset 重寫檢查:

以上是如何確定數組中元素是否存在以避免錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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