ホームページ >バックエンド開発 >PHPチュートリアル >専門家が PHP の 2 次元配列について詳しく語る_PHP チュートリアル

専門家が PHP の 2 次元配列について詳しく語る_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-15 13:27:13988ブラウズ

PHP の開発には長い時間がかかり、多くのユーザーが PHP の 2 次元配列に関する関連知識をオンラインで収集しましたので、ここで共有したいと思います。 -次元配列。

<ol class="dp-xml"><li class="alt"><span><span>boolarray_multisort(array$ar1[,mixed$arg[,mixed$...[,array$...]]]) </span></span></li></ol>

以下はマニュアルの array_multisort 関数の説明です:

array_multisort() は、複数の配列を一度に並べ替えたり、特定の次元または複数の次元に従って多次元配列を並べ替えたりするために使用できます。 。関連 (文字列) キー名は変更されませんが、数値キー名のインデックスが再作成されます。入力配列はテーブルの列として扱われ、行ごとに並べ替えられます。これは SQL の ORDER BY 句の機能と似ています。最初の配列は、ソートされるメインの配列です。配列内の行 (値) が同じであると比較された場合、次の入力配列内の対応する値のサイズに従って並べ替えられます。マニュアルを見ると、PHP 独自の多次元ソートでは、最初の配列をソートし、その後の順序を調整することがわかります。次のような配列:
<ol class="dp-xml">
<li class="alt"><span><span>array('id'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>array(1,3,2),  </span></span></li>
<li class="">
<span>'data'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>array('a','c','b')) </span>
</li>
</ol>

ID で多次元に並べ替えるだけで準備完了です。しかし、多くの場合、私たちが構築する PHP の 2 次元配列は次のようになります:

<ol class="dp-xml">
<li class="alt"><span><span>array(  </span></span></li>
<li class="">
<span>array('id'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>1,'data'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'a'),  </span>
</li>
<li class="alt">
<span>array('id'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>3,'data'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'c'),  </span>
</li>
<li class="">
<span>array('id'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>2,'data'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'b')  </span>
</li>
<li class="alt"><span>); </span></li>
</ol>

配列の要素は行に配置されており、列の 1 つでソートする必要があります。 PHP には行列転置のような機能が提供されていないようです。そのため、array_multisort を多次元ソートに直接使用することはできません。ただし、最初にソートされた列を抽出し、それを最初のパラメータとして array_multisort に渡すだけで済みます。

<ol class="dp-xml">
<li class="alt"><span><span>functionmulti_array_sort($multi_array,$sort_key,$</span><span class="attribute"><font color="#ff0000">sort</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">SORT_ASC</font></span><span>){  </span></span></li>
<li class=""><span>if(is_array($multi_array)){  </span></li>
<li class="alt"><span>foreach($multi_arrayas$row_array){  </span></li>
<li class=""><span>if(is_array($row_array)){  </span></li>
<li class="alt"><span>$key_array[]=$row_array[$sort_key];  </span></li>
<li class=""><span>}else{  </span></li>
<li class="alt"><span>return-1;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span>}  </span></li>
<li class=""><span>}else{  </span></li>
<li class="alt"><span>return-1;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span>array_multisort($key_array,$sort,$multi_array);  </span></li>
<li class=""><span>return$multi_array;  </span></li>
<li class="alt"><span>}  </span></li>
</ol>

以上は PHP の 2 次元配列の簡単な紹介でした。皆さんのお役に立てれば幸いです。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446530.html技術記事 PHP の開発には長い時間がかかり、多くのユーザーが PHP の 2 次元配列に関連する知識をオンラインで収集しました。PHP 自体には複数の知識があります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。