ホームページ >バックエンド開発 >PHPチュートリアル >PHP 配列関数の使用方法の詳細_PHP チュートリアル

PHP 配列関数の使用方法の詳細_PHP チュートリアル

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

PHP の配列関数は非常によく使われるので、PHP の配列関数を研究し、ここで皆さんに共有したいと思います。今日は PHP の配列関数を学習します。配列は非常に頻繁に使用されるデータ型です。配列の処理を学習すると、Web サイトを構築する際にさらに快適になります。

例: Web サイトのデータベースには Dali の記事が含まれており、これらの 20 のエンターテイメント ニュース タイトルをデータベースから取り出した後、20 の変数を使用したいとします。 ?あなたはそこまで愚かではないと思いますが、では、これら 20 個のデータを完全に受け取るためにどのような変数を使用できるでしょうか?これには配列変数を使用する必要があります。配列とは何ですか?配列は実際にはデータ コンテナに相当するデータの集合であり、特定の方法に従ってデータを保存したり取り出したりすることもできます。必要なデータがあるかどうかを確認することもできます。複数の配列または多次元配列を並べ替える

1.array_multisort() を使用すると、複数の配列を一度に並べ替えたり、特定の次元に従って多次元配列を並べ替えたりできます。元のキー名の関連付けはソート中に保持され、実装される関数は SQL の ORDERBY に似ています。

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute"><font color="#ff0000">ar1</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">array</font></span><span>("10",100,100,"a");  </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">ar2</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">array</font></span><span>(1,3,"2",1);  </span>
</li>
<li class="alt"><span>array_multisort($ar1,$ar2);  </span></li>
<li class="">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
<li class="alt"><span>//返回结果(保持了原来数组的关联性)  </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">ar1</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">Array</font></span><span>([0]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>10[1]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>a[2]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>100[3]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>100)  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute"><font color="#ff0000">ar2</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">Array</font></span><span>([0]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>1[1]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>1[2]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>2[3]=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>3)  </span>
</li>
<li class=""><span> </span></li>
<li class="alt"><span>//实现学生成绩排名  </span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">grade</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">array</font></span><span>("score"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>array(70,95,70.0,60,"70"),  </span>
</li>
<li class="alt">
<span>"name"=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>array("ZhangSan","LiSi","WangWu",  </span>
</li>
<li class=""><span>"ZhaoLiu","LiuQi"));  </span></li>
<li class="alt"><span>array_multisort($grade["score"],SORT_NUMERIC,SORT_DESC,  </span></li>
<li class=""><span>//将分数作为数值,由高到低排序  </span></li>
<li class="alt"><span>$grade["name"],SORT_STRING,SORT_ASC);  </span></li>
<li class=""><span>//将名字作为字符串,由小到大排序  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
<li class=""><span>//输出结果  </span></li>
<li class="alt"><span> </span></li>
<li class=""><span>array(  </span></li>
<li class="alt">
<span>'score'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> </span>
</li>
<li class=""><span>array(  </span></li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">0</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>95,  </span>
</li>
<li class="">
<span></span><span class="attribute"><font color="#ff0000">1</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'70',  </span>
</li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">2</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>70,  </span>
</li>
<li class="">
<span></span><span class="attribute"><font color="#ff0000">3</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>70,  </span>
</li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">4</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>60,  </span>
</li>
<li class=""><span>),  </span></li>
<li class="alt">
<span>'name'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> </span>
</li>
<li class=""><span>array(  </span></li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">0</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'LiSi',  </span>
</li>
<li class="">
<span></span><span class="attribute"><font color="#ff0000">1</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'LiuQi',  </span>
</li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">2</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'WangWu',  </span>
</li>
<li class="">
<span></span><span class="attribute"><font color="#ff0000">3</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'ZhangSan',  </span>
</li>
<li class="alt">
<span></span><span class="attribute"><font color="#ff0000">4</font></span><span>=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'ZhaoLiu',  </span>
</li>
<li class=""><span>),  </span></li>
<li class="alt"><span>)  </span></li>
</ol>

2.array_rand() と shuffle()、1 つは配列から 1 つ以上の値をランダムに取り出すことであり、もう 1 つは配列内の値の順序を乱すことです。配列からランダムにデータを抽出する関数は、抽選などの関数を実装するために使用できます。

3.array_reduce() は、コールバック関数関数を入力配列内の各ユニットに繰り返し適用し、それによって配列を単一の値に削減します。オプションの初期パラメータが指定されている場合、それは配列内の最初の値として扱われるか、配列が空の場合は最終的な戻り値として扱われます。

<ol class="dp-xml"><li class="alt">
<span><strong><font color="#006699"><span class="tag"><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> </SPAN></SPAN><LI class=""><SPAN>functionrsum($v,$w){  </SPAN><LI class=alt><SPAN>$v+=$w;  </SPAN><LI class=""><SPAN>return$v;  </SPAN><LI class=alt><SPAN>}  </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>functionrmul($v,$w){  </SPAN><LI class=""><SPAN>$v*=$w;  </SPAN><LI class=alt><SPAN>return$v;  </SPAN><LI class=""><SPAN>}  </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>a</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>(1,2,3,4,5);  </SPAN></SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>x</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>();  </SPAN></SPAN><LI class=""><SPAN>//实现array_sum()功能  </SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>b</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array_reduce</FONT></SPAN><SPAN>($a,"rsum");//</SPAN><SPAN class=attribute-value><FONT color=#0000ff>1</FONT></SPAN><SPAN class=attribute><FONT color=#ff0000>15</FONT></SPAN><SPAN>=1+2+3+4+5  </SPAN></SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>c</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array_reduce</FONT></SPAN><SPAN>($a,"rmul",10);//</SPAN><SPAN class=attribute-value><FONT color=#0000ff>1</FONT></SPAN><SPAN class=attribute><FONT color=#ff0000>1200</FONT></SPAN><SPAN>=1*2*3*4*5*10  </SPAN></SPAN><LI class=""><SPAN>$</SPAN><SPAN class=attribute><FONT color=#ff0000>d</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>array_reduce</FONT></SPAN><SPAN>($x,"rsum",1);//1  </SPAN></SPAN><LI class=alt><SPAN></SPAN><SPAN class=tag><STRONG><FONT color=#006699>?></span></font></strong></span><span> </span>
</li></ol>

この関数は配列(積、差などの関数)の和を実現することができます


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/446540.html技術記事 PHP の配列関数は非常によく使われるので、PHP の配列関数を勉強してここで共有しました。皆さんのお役に立てれば幸いです。今日は PHP の配列関数を学びます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。