PHP では、配列は非常に一般的なデータ構造であり、多次元配列は配列の特殊な形式です。多次元配列は配列とみなすことができ、各要素には配列が格納されます。実際の開発では、多次元配列から指定された要素を検索する必要がある場合がありますが、この目的を達成するために、PHP にはいくつかの組み込み関数と演算子が用意されています。
この記事では、PHP で多次元配列内の指定された要素を検索する方法を紹介し、読者が関連知識をよりよく理解して適用できるようにいくつかのコード サンプルを提供します。
1. array_search 関数を使用して、指定された値を検索します。
PHP には、配列内の指定された値を検索するために使用できる組み込み関数 array_search() が用意されています。配列を手動で走査します。この関数は、「緩和比較」方法を使用して検索します。つまり、比較に合同記号 === を使用する代わりに == を使用します。以下は、多次元配列で指定された値を検索するサンプル コードです。
/** * 查找多维数组中指定值 * * @param mixed $needle 需要查找的值 * @param array $haystack 目标多维数组 * @return mixed 返回找到的键名,如果未找到则返回false */ function searchValueInMultidimensionalArray($needle, $haystack) { foreach ($haystack as $key => $value) { $currentKey = $key; if ($needle == $value || (is_array($value) && searchValueInMultidimensionalArray($needle, $value) !== false)) { return $currentKey; } } return false; } // 示例用法 $multidimensionalArray = [ 'a' => [ 'b' => 'c', 'd' => 'e' ], 'f' => [ 'g' => [ 'h' => 'i', 'j' => 'k' ] ] ]; $searchValue = 'e'; $result = searchValueInMultidimensionalArray($searchValue, $multidimensionalArray); echo $result; // 输出a/d
上記のサンプル コードでは、多次元配列で指定された値を検索するために、searchValueInMulti次元Array() という名前のカスタム関数を定義しました。この関数は再帰的メソッドを使用して走査し、各走査中に array_search() 関数を使用して、現在の配列要素に検索対象の値が含まれているかどうかを検索します。
2. array_filter 関数を使用して、指定されたキー名またはキー値を検索します
特定の要素を検索することに加えて、多次元の要素のリストも検索する必要がある場合があります。指定された条件を満たす配列。 PHP には、特定の条件を満たす要素をフィルタリングするために使用できる組み込み関数 array_filter() が用意されています。また、検索するキー名またはキー値を指定することもできます。
次は、多次元配列で指定されたキー名を検索するサンプル コードです。
// 示例数组 $multidimensionalArray = [ 'a' => [ 'b' => 'c', 'd' => 'e' ], 'f' => [ 'g' => [ 'h' => 'i', 'j' => 'k' ] ] ]; // 查找键名为'b'的元素 $searchKey = 'b'; $filteredArray = array_filter($multidimensionalArray, function ($value, $key) use ($searchKey) { return $key == $searchKey; }, ARRAY_FILTER_USE_KEY); print_r($filteredArray);
上記のコードは、次の結果を出力します。上記のコードでは、array_filter () 関数を使用し、コールバック関数の $keys パラメーターを使用して現在の配列要素のキー名を表し、このキー名を使用して指定した検索キー名 ($searchKey) と比較します。 。
さらに、$ureKey パラメーターを使用して指定されたキー値を見つけることもできます。サンプル コードは次のとおりです:
Array ( [a] => Array ( [b] => c ) )
上記のコードは次の結果を出力します:
// 示例数组 $multidimensionalArray = [ 'a' => [ 'b' => 'c', 'd' => 'e' ], 'f' => [ 'g' => [ 'h' => 'i', 'j' => 'k' ] ] ]; // 查找键值为'k'的元素 $searchValue = 'k'; $filteredArray = array_filter($multidimensionalArray, function ($value, $key) use ($searchValue) { return is_array($value) ? in_array($searchValue, $value) : $value == $searchValue; }); print_r($filteredArray);
In 上記のコードでは、 is_array() 関数を使用して、現在の値も配列であるかどうかを判断します。そうであれば、 in_array() 関数を使用して、現在の配列に必要なキー値が含まれているかどうかを判断します。検索されること。そうでない場合は、== を使用して直接比較します。
概要
この記事では、PHP で多次元配列内の指定された要素を検索する方法を紹介し、読者が関連知識をよりよく理解して適用できるようにいくつかのコード サンプルを提供しました。実際の開発では、特定の条件を満たす多次元配列内の要素のリストを見つける必要がある場合は、PHP 組み込み関数 array_filter() を使用してフィルタリングすることができ、指定された要素を見つける必要がある場合は、 array_search() またはカスタム関数を使用して検索を横断します。これらの方法を柔軟に使用することで、さまざまな複雑な PHP アプリケーションをより効率的に開発することができます。
以上がPHPの多次元配列で指定した値を見つけることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、酸とベースのデータベースモデルを比較し、その特性と適切なユースケースを詳述しています。酸は、財務およびeコマースアプリケーションに適したデータの整合性と一貫性を優先し、ベースは可用性に焦点を当て、

この記事では、コードインジェクションのような脆弱性を防ぐために、PHPファイルのアップロードを確保することについて説明します。ファイルタイプの検証、セキュアストレージ、およびアプリケーションセキュリティを強化するエラー処理に焦点を当てています。

記事では、組み込み関数、ホワイトリストアプローチ、サーバー側の検証などの手法に焦点を当てたセキュリティを強化するためのPHP入力検証のベストプラクティスについて説明します。

この記事では、Token BucketやLeaky BucketなどのアルゴリズムやSymfony/Rate-Limiterなどのライブラリを使用するなど、PHPでAPIレート制限を実装するための戦略について説明します。また、監視、動的に調整されたレートの制限、および手をカバーします

この記事では、パスワードを保護するためにPHPでpassword_hashとpassword_verifyを使用することの利点について説明します。主な議論は、これらの関数が自動塩の生成、強力なハッシュアルゴリズム、およびSecurを通じてパスワード保護を強化するということです

この記事では、PHPおよび緩和戦略におけるOWASPトップ10の脆弱性について説明します。重要な問題には、PHPアプリケーションを監視および保護するための推奨ツールを備えたインジェクション、認証の壊れ、XSSが含まれます。

この記事では、PHPでのXSS攻撃を防ぐための戦略について説明し、入力の消毒、出力エンコード、セキュリティを向上させるライブラリとフレームワークの使用に焦点を当てています。

この記事では、PHPでのインターフェイスと抽象クラスの使用について説明し、それぞれをいつ使用するかに焦点を当てています。インターフェイスは、無関係なクラスや複数の継承に適した、実装なしで契約を定義します。抽象クラスは共通の機能を提供します


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
