<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 这部分代码与文章内容无关,仅作为示例展示</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"开始文章内容展示"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
如何使用PHP </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>()提取数组的所有键名?使用示例分析
在PHP开发中,数组是一种非常重要的数据结构。经常需要对数组的键名进行操作,比如提取数组中所有的键名,方便后续处理。PHP内置了一个非常实用的函数——`</span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>()`,专门用来提取数组的键名。
</span><span><span class="hljs-comment">### 一、array_keys()函数简介</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>()`函数的作用是返回输入数组中所有的键名组成的新数组。其基本语法如下:
```php
</span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$array</span></span><span>, </span><span><span class="hljs-keyword">mixed</span></span><span> </span><span><span class="hljs-variable">$search_value</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>, </span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-variable">$strict</span></span><span> = </span><span><span class="hljs-literal">false</span></span><span>)
</span></span>
:必須、入力配列。
$ search_value (オプション):この値が指定されている場合、関数はその値がその値に等しいキー名のみを返します。
$ strict (オプション):厳密に比較するかどうか(タイプを含む)、デフォルトのfalse。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$person</span></span><span> = [
</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"シャオミン"</span></span><span>,
</span><span><span class="hljs-string">"age"</span></span><span> => </span><span><span class="hljs-number">25</span></span><span>,
</span><span><span class="hljs-string">"gender"</span></span><span> => </span><span><span class="hljs-string">"男"</span></span><span>
];
</span><span><span class="hljs-variable">$keys</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$person</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$keys</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
出力結果:
<span><span>Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => name
[</span><span><span class="hljs-meta">1</span></span><span>] => age
[</span><span><span class="hljs-meta">2</span></span><span>] => gender
)
</span></span>
ご覧のとおり、 array_keys()は、array $ pershのすべてのキー名を返し、インデックス配列を形成します。
array_keys()も2番目のパラメーターをサポートしています。値を渡した後、値に対応するキー名のみが返されます。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$array</span></span><span> = [
</span><span><span class="hljs-string">"a"</span></span><span> => </span><span><span class="hljs-number">100</span></span><span>,
</span><span><span class="hljs-string">"b"</span></span><span> => </span><span><span class="hljs-number">200</span></span><span>,
</span><span><span class="hljs-string">"c"</span></span><span> => </span><span><span class="hljs-number">100</span></span><span>,
</span><span><span class="hljs-string">"d"</span></span><span> => </span><span><span class="hljs-number">300</span></span><span>
];
</span><span><span class="hljs-variable">$keys</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, </span><span><span class="hljs-number">100</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$keys</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
出力:
<span><span>Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => a
[</span><span><span class="hljs-meta">1</span></span><span>] => c
)
</span></span>
ここで、 array_keys()はすべてのキー名を100の値で返します。
タイプを区別する必要がある場合は、厳密なモードをオンにすることができます。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$array</span></span><span> = [
</span><span><span class="hljs-string">"a"</span></span><span> => </span><span><span class="hljs-string">"100"</span></span><span>,
</span><span><span class="hljs-string">"b"</span></span><span> => </span><span><span class="hljs-number">100</span></span><span>,
</span><span><span class="hljs-string">"c"</span></span><span> => </span><span><span class="hljs-number">200</span></span><span>
];
</span><span><span class="hljs-variable">$keys</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, </span><span><span class="hljs-number">100</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$keys</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
出力:
<span><span>Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => b
)
</span></span>
タイプ変換は厳密なモードでは実行されないため、同じ値タイプと値を持つキー名のみが返されます。
array_keys()は、配列内のすべてのキー名を抽出し、キー名を含む新しい配列を返すために使用されます。
指定された値に対応するキー名は、2番目のパラメーター制限によって返すことができます。
3番目のパラメーターは、厳密な比較を可能にし、タイプを区別します。
この関数は、データをフィルタリングし、配列構造を再編成する場合に非常に便利です。
Array_keys()のマスタリングにより、PHPアレイ操作により柔軟で効率的になり、コードの品質が向上することができます。
<hr> <?php //記事は終了し、将来的にはコンテンツがありませんか?> <span></span>
関連タグ:
array_keys