如何在 PHP 中按鍵前綴過濾數組元素?

Barbara Streisand
發布: 2024-10-27 12:30:30
原創
465 人瀏覽過

How to Filter Array Elements by Key Prefix in PHP?

按鍵前綴過濾數組元素

給定一個包含鍵和值的數組,如何刪除鍵不以一個特定的字串?例如,給定以下數組:

<code class="php">array(
  'abc' => 0,
  'foo-bcd' => 1,
  'foo-def' => 1,
  'foo-xyz' => 0,
  // ...
)</code>
登入後複製

目標是僅保留鍵以“foo-”開頭的元素。

函數方法:

使用array_filter 函數,您可以過濾數組並只保留所需的元素:

<code class="php">$array = array_filter($array, function($key) {
    return strpos($key, 'foo-') === 0;
}, ARRAY_FILTER_USE_KEY);</code>
登入後複製

過程方法:

或者,過程方法可以使用方法:

<code class="php">$only_foo = array();
foreach ($array as $key => $value) {
    if (strpos($key, 'foo-') === 0) {
        $only_foo[$key] = $value;
    }
}</code>
登入後複製

物件的過程方法:

使用迭代器,還可以過濾數組:

<code class="php">$i = new ArrayIterator($array);
$only_foo = array();
while ($i->valid()) {
    if (strpos($i->key(), 'foo-') === 0) {
        $only_foo[$i->key()] = $i->current();
    }
    $i->next();
}</code>
登入後複製

以上是如何在 PHP 中按鍵前綴過濾數組元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!