PHP配列関数の体験まとめ_PHPチュートリアル

WBOY
リリース: 2016-07-15 13:27:15
オリジナル
775 人が閲覧しました

ここ数日、インターネットで PHP の配列関数に関する関連知識をたくさん読みましたが、孔子の「温故知新」はまさに真実だと感じました。いくつかの経験をまとめました。 . 皆様のお役に立てれば幸いです。

PHPの配列は実際には順序付けされたグラフであり、グラフは値をキーにマッピングするタイプです。この型はさまざまな方法で最適化されているため、実際の配列、リスト (ベクトル)、ハッシュ テーブル (グラフの実装)、辞書、セット、スタック、キューなどとして使用できます。さらなる可能性を。別のPHP配列を値として使用できるので、ツリーのシミュレーションも簡単に行えます。これらの構造について説明することはこのマニュアルの範囲を超えていますが、各構造の例が少なくとも 1 つあります。これらの構造の詳細については、この広範なトピックに関する外部の作品を参照することをお勧めします。PHP 配列関数に関する私の経験をいくつか紹介します。

1. 1 次元配列を 2 次元配列に分割します。 )

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute"><font color="#ff0000">input_array</font></span><span>=array('a','b','c','d','e');  </span></span></li>
<li class=""><span>print_r(array_chunk($input_array,2)); </span></li>
</ol>
ログイン後にコピー

2. 2 つの配列、array_diff_assoc() または array_diff() を比較します。戻り値が空の場合は、2 つの配列が同じであることを意味し、それ以外の場合は異なります。

3. 関数を使用して配列の値をフィルターします。array_filter()

<ol class="dp-xml">
<li class="alt"><span><span>functionodd($var){  </span></span></li>
<li class="">
<span>return($var%</span><span class="attribute"><font color="#ff0000">2</font></span><span>==1);  </span>
</li>
<li class="alt"><span>}  </span></li>
<li class=""><span>functioneven($var){  </span></li>
<li class="alt">
<span>return($var%</span><span class="attribute"><font color="#ff0000">2</font></span><span>==0);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt">
<span>$</span><span class="attribute-value"><font color="#0000ff">array</font></span><span class="attribute"><font color="#ff0000">array1</font></span><span>=array("a"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>1,"b"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>2,"c"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>3,"d"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>4,"e"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>5);  </span>
</li>
<li class="">
<span>$</span><span class="attribute-value"><font color="#0000ff">array</font></span><span class="attribute"><font color="#ff0000">array2</font></span><span>=array(6,7,8,9,10,11,12);  </span>
</li>
<li class="alt"><span>echo"Odd:n";  </span></li>
<li class=""><span>print_r(array_filter($array1,"odd"));  </span></li>
<li class="alt"><span>echo"Even:n";  </span></li>
<li class=""><span>print_r(array_filter($array2,"even"));  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>
ログイン後にコピー

4.array_map() は、指定された配列のセルにコールバック関数を適用します。そのパラメーターは 1 つまたは複数の配列です。コールバック関数のパラメータは、コールバック関数を呼び出すパラメータと同じである必要があります。

<ol class="dp-xml">
<li class="alt"><span><span>//单个参数的例子,将数组中的每个值,乘以它的3次方  </span></span></li>
<li class=""><span>functioncube($n){  </span></li>
<li class="alt"><span>return$n*$n*$n;  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">a</span><span>=</span><span class="attribute-value">array</span><span>(1,2,3,4,5);  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">b</span><span>=</span><span class="attribute-value">array_map</span><span>("cube",$a);  </span>
</li>
<li class=""><span>print_r($b);  </span></li>
<li class="alt">
<span></span><span class="tag">?></span><span> </span>
</li>
<li class=""><span> </span></li>
<li class="alt"><span>//多个数组参数的例子  </span></li>
<li class=""><span>functionshow_Spanish($n,$m){  </span></li>
<li class="alt"><span>return"Thenumber$niscalled$minSpanish";  </span></li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>functionmap_Spanish($n,$m){  </span></li>
<li class="alt">
<span>returnarray($</span><span class="attribute">n</span><span>=</span><span class="tag">></span><span>$m);  </span>
</li>
<li class=""><span>}  </span></li>
<li class="alt"><span> </span></li>
<li class="">
<span>$</span><span class="attribute">a</span><span>=</span><span class="attribute-value">array</span><span>(1,2,3,4,5);  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">b</span><span>=</span><span class="attribute-value">array</span><span>("uno","dos","tres","cuatro","cinco");  </span>
</li>
<li class=""><span> </span></li>
<li class="alt">
<span>$</span><span class="attribute">c</span><span>=</span><span class="attribute-value">array_map</span><span>("show_Spanish",$a,$b);  </span>
</li>
<li class=""><span>print_r($c);  </span></li>
<li class="alt">
<span>$</span><span class="attribute">d</span><span>=</span><span class="attribute-value">array_map</span><span>("map_Spanish",$a,$b);  </span>
</li>
<li class=""><span>print_r($d);  </span></li>
<li class="alt">
<span></span><span class="tag">?></span><span> </span>
</li>
<li class=""><span>//输出结果  </span></li>
<li class="alt"><span>//printoutof$c  </span></li>
<li class=""><span>Array  </span></li>
<li class="alt"><span>(  </span></li>
<li class="">
<span>[0]=</span><span class="tag">></span><span>Thenumber1iscalledunoinSpanish  </span>
</li>
<li class="alt">
<span>[1]=</span><span class="tag">></span><span>Thenumber2iscalleddosinSpanish  </span>
</li>
<li class="">
<span>[2]=</span><span class="tag">></span><span>Thenumber3iscalledtresinSpanish  </span>
</li>
<li class="alt">
<span>[3]=</span><span class="tag">></span><span>Thenumber4iscalledcuatroinSpanish  </span>
</li>
<li class="">
<span>[4]=</span><span class="tag">></span><span>Thenumber5iscalledcincoinSpanish  </span>
</li>
<li class="alt"><span>)  </span></li>
</ol>
ログイン後にコピー

上記はPHPの配列関数の概要です。皆さんも覚えてください。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446539.html技術記事ここ数日、インターネットで PHP の配列関数について多くの記事を読みましたが、孔子の「温故知新」はまさにその通りだと感じました。そのような経験をいくつかまとめてみました。皆様のお役に立ちますように...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!