PHP は、Web 開発に広く使用されている人気のオープンソース スクリプト言語です。 PHP 開発者の日常業務では、2 つの配列を比較し、それらの間の異なる部分を見つけることが必要になることがよくあります。この記事では、さまざまな配列を実現するためのいくつかの方法を紹介します。
- array_diff() 関数
PHP の array_diff() 関数は、2 つの配列間の差異を比較するために使用できます。最初の配列が他の配列と異なる値のセットを返します。以下はサンプルコードです:
$a1 = array("apple", "orange", "banana"); $a2 = array("orange", "banana", "pear"); $result = array_diff($a1, $a2); print_r($result);
実行結果が出力されます:
Array ( [0] => apple )
- array_udiff() function
PHP は array_udiff も提供します() 関数。この関数を使用すると、配列内の値を比較するコールバック関数をカスタマイズできます。これは、より複雑なデータ比較に適した、より柔軟な方法です。サンプル コードは次のとおりです。
function my_array_diff($a1, $a2) { return strcmp($a1,$a2); } $a1 = array("apple", "orange", "banana"); $a2 = array("orange", "banana", "pear"); $result = array_udiff($a1, $a2, "my_array_diff"); print_r($result);
この関数は、最初の配列内の他の配列とは異なる値のセットも返します。
- array_diff_key() 関数
array_diff_key() 関数は、キーに対応する値ではなく、2 つの配列のキーを比較するために使用されます。最初の配列が他の配列と異なるキーのセットを返します。サンプル コードは次のとおりです。
$a1 = array("a" => "apple", "b" => "orange", "c" => "banana"); $a2 = array("a" => "orange", "b" => "banana", "d" => "pear"); $result = array_diff_key($a1, $a2); print_r($result);
$a2 には対応するキーがないため、この関数は $a1 にキー "c" を持つ要素のみを返します。
- 多次元配列の比較
多次元配列のさまざまな部分を比較する必要がある場合は、比較に再帰関数を使用する必要があります。以下は再帰関数のサンプル コードです。
function array_diff_recursive($array1, $array2) { $result = array(); foreach($array1 as $key => $value) { if(is_array($value)) { if(!isset($array2[$key]) || !is_array($array2[$key])) { $result[$key] = $value; } else { $diff = array_diff_recursive($value, $array2[$key]); if(!empty($diff)) { $result[$key] = $diff; } } } else if(!array_key_exists($key,$array2) || $array2[$key] !== $value) { $result[$key] = $value; } } return $result; }
この関数は 2 つの多次元配列を比較し、最初の配列が他の配列と異なる値のみを含む配列を返します。
概要
2 つの単純な配列を比較する必要がある場合でも、多次元配列を比較する必要がある場合でも、PHP にはそれを支援する組み込み関数が多数用意されています。 array_diff() 関数は 2 つの配列間の異なる部分を比較でき、array_udiff() 関数は配列内の値を比較するコールバック関数をカスタマイズできます。array_diff_key() 関数は 2 つの配列のキーを比較します。多次元配列の異なる部分を比較する必要がある場合は、比較に再帰関数を使用する必要があります。これらの方法を理解すると、配列の比較に関連するタスクを簡単に実行できるようになります。
以上がPHPで2つの配列の異なる部分を取得する方法の詳細内容です。詳細については、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ヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
