ホームページ  >  記事  >  バックエンド開発  >  PHPでよく使う配列関数の例まとめ【代入、分割、結合、計算、追加、削除、問い合わせ、判定、並べ替え】

PHPでよく使う配列関数の例まとめ【代入、分割、結合、計算、追加、削除、問い合わせ、判定、並べ替え】

高洛峰
高洛峰オリジナル
2016-12-30 11:00:181618ブラウズ

この記事の例は、PHP でよく使用される配列関数をまとめたものです。参考のために皆さんと共有してください。詳細は次のとおりです:

array_combine

機能: 一方の配列の値を新しい配列のキー名として使用し、もう一方の配列の値を新しい配列の値として使用します

ケース:

<?php
$a = array("one","two","three");
$b = array("一","二","三");
$c = array_combine($a,$b);
print_r($c);
/**结果
*Array ( [one] => 一 [two] => 二 [three] => 三 )
*/

array_chunk

関数: 数値を複数の配列に分割する

<?php
$input_array = array("a"=>"apple","b"=>"blue","c","d","e");
echo "<pre class="brush:php;toolbar:false">";
print_r(array_chunk($input_array, 2));
print_r(array_chunk($input_array, 2,True));
echo "
"; /**结果 Array ( [0] => Array ( [0] => apple [1] => blue ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) ) Array ( [0] => Array ( [a] => apple [b] => blue ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [2] => e ) ) */

array_count_values

関数: 配列内に値が出現する回数をカウントする

りー

array_diff

関数: 最初の数値 グループから数値を削除します 2 つの配列のデータは結果として残りの内容を返します

<?php
$input_array = array("a"=>"apple","b"=>"blue","c","d","e");
echo "<pre class="brush:php;toolbar:false">";
print_r(array_count_values($input_array));
echo "
"; /**结果 Array ( [apple] => 1 [blue] => 1 [c] => 1 [d] => 1 [e] => 1 ) */

array_map

関数: 配列へのコールバック関数を実行します

<?php
$array1 = array("a"=>"apple","b"=>"blue","c","d","e");
$array2 = array("apple","c","d","f");
$result = array_diff($array1, $array2);
$result2 = array_diff($array2, $array1);
echo "<pre class="brush:php;toolbar:false">";
print_r($result);//数组1中去掉数组2中剩下的
print_r($result2);//数组2中去掉数组1中剩下的
echo "
"; /**结果 Array ( [b] => blue [2] => e ) Array ( [3] => f ) */

array_merge

機能: 1 つ以上の配列を結合します

説明: 後ろに同じキー名のキーがある場合、前の内容は上書きされ、数字キーを持つキーが後ろに追加されます

<?php
//定义回调函数
function cube($n){
 return ($n*$n*$n);
}
$a = array(1,2,3,4,5);
$b = array_map("cube",$a);
echo "<pre class="brush:php;toolbar:false">";
print_r($b);
echo "
"; /**结果 Array ( [0] => 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) */

array_pop

関数: 配列の最後の要素を削除し、削除された要素を返します。 要素の内容

<?php
$array1 = array("color"=>"red",2,4);
$array2 = array("a","b","color"=>"green","shape"=>"trapezoid",4);
$result1 = array_merge($array1,$array2);
$result2 = array_merge_recursive($array1,$array2);
echo "<pre class="brush:php;toolbar:false">";
print_r($result1);
print_r($result2);
echo "
"; /**结果 Array ( [color] => green [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 ) Array ( [color] => Array ( [0] => red [1] => green ) [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 ) */E

Array_Push

関数: 配列の末尾に単位数を押します。配列の末尾

array_search

関数: 配列内のコンテンツをクエリし、キー値を返します。複数の一致がある場合は、最初に一致したコンテンツを返します

array_shift

関数: 削除します。開始要素と Array_pop の反対側

<?php
$stack = array("orange","banana","apple","1");
$last = array_pop($stack);
echo "<pre class="brush:php;toolbar:false">";
print_r($stack);
print_r($last);
echo "
"; /**结果 Array ( [0] => orange [1] => banana [2] => apple ) 1 */E

Array_unique

機能: 繰り返される要素の配列を削除し、キー名と値を含む最初の外観を保持します

<?php
$stack = array("orange","banana");
$count = array_push($stack,"apple","red","blue");
echo "<pre class="brush:php;toolbar:false">";
print_r($stack);
print_r($count);
echo "
"; /**结果 Array ( [0] => orange [1] => banana [2] => apple [3] => red [4] => blue ) 5 */E

Array_slice

<?php
$input = array("orange","banana","apple","red","blue");
$rand = array_rand($input,2);;
print_r($rand);
$rand = array_rand($input,3);
print_r($rand);
/**结果
Array
(
 [0] => 1
 [1] => 4
)
Array
(
 [0] => 0
 [1] => 1
 [2] => 3
)
*/

count

関数: 配列要素の数を返します。要素が配列の場合、1 つとしてカウントされます

current

関数: 要素を指す現在のポインターを取得します

<?php
$array = array("blue"=>"b","red"=>"r","green","r");
$key = array_search(&#39;b&#39;, $array);
echo $key;
echo "<br>";
$key = array_search(&#39;r&#39;, $array);
echo $key;
echo "<br>";
/**结果
blue
red
*/

in_array

関数: 配列に特定の値が存在するかどうかを確認し、存在する場合はTrueを返し、そうでない場合はFalseを返します

<?php
$fruit = array("milk","orange","banana","apple");
$top = array_shift($fruit);
print_r($top);
echo "<br>";
print_r($fruit);
/**结果
milk
Array ( [0] => orange [1] => banana [2] => apple )
*/

list

関数: 配列内の情報を複数の変数に代入します

<?php
$input = array("a"=>"green","red","b"=>"green","blue","c"=>"red");
$result = array_unique($input);
print_r($result);
echo "<br>";
print_r($input);
/**结果
Array ( [a] => green [0] => red [1] => blue )
Array ( [a] => green [0] => red [b] => green [1] => blue [c] => red )
*/

shuffle

関数: 配列をスクランブルします

<?php
$input = array("a","b","c","d","e");
$output = array_slice($input,2);//第二个参数没有时,表示取到最后一个元素
print_r($output);
echo "<br>";
$output = array_slice($input,-2,1);//第二个参数是正数时,表示个数;倒数第一个是-1,倒数第二个是-2
print_r($output);
echo "<br>";
$output = array_slice($input,0,3);
print_r($output);
echo "<br>";
$output = array_slice($input,2,-1);//第二个参数是负数时,表示位置,取到哪一位,不包括本身
print_r($output);
echo "<br>";
$output = array_slice($input,2,-1,true);//第三个参数为true时,保留原有的键值
print_r($output);
echo "<br>";
/**结果
Array ( [0] => c [1] => d [2] => e )
Array ( [0] => d )
Array ( [0] => a [1] => b [2] => c )
Array ( [0] => c [1] => d )
Array ( [2] => c [3] => d )
*/

array_keys

関数: 配列のキー名を取得します。2番目のパラメータは特定の要素を取得するために指定できます

array_逆

関数: 配列の逆を取得します

<?php
$input = array("a","b","c",array("d","e"));
$count = count($input);
echo $count;
echo "<br>";
$input = array("a","b","c","d","e");
$count = count($input);
echo $count;
/**结果
4
5
*/

arsort

関数: 逆ソート、インデックスは変更されません

<?php
$array = array("foot","bike","car","plane");
$result = current($array);
echo $result."<br>";
next($array);//使指针指向下一个元素
$result = current($array);
echo $result."<br>";
prev($array);//使指针指向前一个元素
$result = current($array);
echo $result."<br>";
end($array);//使指针指向最后一个元素
$result = current($array);
echo $result."<br>";
/**结果
foot
bike
foot
plane
*/

asort

関数: 順ソート

<?php
$os_list = array("Mac","NT","Irix","Linux");
if(in_array("Irix",$os_list)){
 echo "当前操作系统列表中存在Irix";
}else{
 echo "当前操作系统列表中不存在Irix";
}
echo "<br>";
if(in_array("mac",$os_list)){
 echo "当前操作系统列表中存在mac";
}else{
 echo "当前操作系统列表中不存在mac";
}
echo "<br>";
/**结果
当前操作系统列表中存在Irix
当前操作系统列表中不存在mac
*/

krsort

機能: キー名による逆ソート

<?php
$info = array("red","blue","green");
list($flag,$sky,$grassland) = $info;
echo "$flag,$sky,$grassland";
echo "<br>";
list($flag,,$grassland) = $info;
echo "$flag,$grassland";
echo "<br>";
list(,,$grassland) = $info;
echo "$grassland";
echo "<br>";
/**结果
red,blue,green
red,green
green
*/

ksort

機能: キー名による順ソート

<?php
$numbers = range(1,5);//生成一个随机数组
print_r($numbers);
echo "<br/>";
shuffle($numbers);//打乱数组
print_r($numbers);
/**结果
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Array ( [0] => 4 [1] => 1 [2] => 5 [3] => 2 [4] => 3 )
*/

rsort

機能: 値による逆ソート、キー名変更

<?php
$array = array(0=>100,"color"=>"red");
print_r(array_keys($array));
echo "<br>";
$array = array("blue","red","green","blue","blue");
print_r(array_keys($array,"blue"));
echo "<br>";
$array = array("color"=>array("blue","red","green"),"size"=>array("small","medium","large"));
print_r(array_keys($array));
echo "<br>";
/**结果
Array ( [0] => 0 [1] => color )
Array ( [0] => 0 [1] => 3 [2] => 4 )
Array ( [0] => color [1] => size )
*/

sort

機能: 値による前方ソート、キー名の変更

<?php
$input = array("php",3.0,array("green","red"));
$result = array_reverse($input); //打乱键名
$result_keyed = array_reverse($input,TRUE);//保留键名
print_r($result);
print_r($result_keyed);
/**结果
Array
(
 [0] => Array
  (
   [0] => green
   [1] => red
  )
 [1] => 3
 [2] => php
)
Array
(
 [2] => Array
  (
   [0] => green
   [1] => red
  )
 [1] => 3
 [0] => php
)
*/

この記事が PHP プログラミングの皆様のお役に立てれば幸いです。

PHP で一般的に使用される配列関数 [代入、分割、結合、計算、追加、削除、クエリ、判断、並べ替え] のその他の例については、PHP 中国語 Web サイトの関連記事に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。