ホームページ  >  記事  >  バックエンド開発  >  PHP の基本的な配列の結合、分割、および差分値関数 set_PHP チュートリアル

PHP の基本的な配列の結合、分割、および差分値関数 set_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:45:42713ブラウズ

PHP配列の結合、分割、差分値関数セット
PHP の配列関数は非常に強力で、プロジェクト作業で実際に使用することでのみ実感できると言われています。少なくとも私はその秘密を徐々に発見しました。 配列を結合するには 3 つの関数があります:
1.array_combine()
これは 2 つのパラメーター配列を持ち、パラメーター配列 1 の値は新しい配列のキーとして使用され、パラメーター配列 2 の値は新しい配列の値として使用されます。とてもシンプルです。
例:
$a = array('緑', '赤', '黄色'); $b = array('アボカド', 'リンゴ', 'バナナ'); $c = array_combine($a, $b);
プリント_r($c); ?>

上記の例では次のように出力されます:

配列
(
[緑] => アボカド
[赤] =>リンゴ
[黄色] => バナナ
)
2.array_merge()
2 つのパラメーター配列を運ぶには、単に配列 2 を配列 1 に追加して新しい配列を形成します。
例:
$arrayarray1 = array("color" => "赤", 2, 4); $arrayarray2 = array("a", "b", "color" => "green", "shape" => "台形", 4); $result = array_merge($array1, $array2); print_r($result); ?>

上記の例では次のように出力されます:
配列
(
[カラー] => グリーン
[0] => 2
[1] => 4
[2] =>
[3] => [形状] =>台形
[4] => 4
)
3.array_merge_recursive()
上記の関数と同じですが、追加する際にarray_merge()の処理方法が前のキーの値を上書きする点が異なります。 ) は、サブ配列を再構築し、繰り返されたキーを置き換えて、新しい数値配列を形成します。
例:
$ar1 = array("色" => 配列("お気に入り" => "赤"), 5); $ar2 = array(10, "color" => array("favorite" => "green", "blue")); $result = array_merge_recursive($ar1, $ar2); ?>

上記の例では
が出力されます $結果:

配列
(
[色] => 配列
(
[お気に入り] => 配列
(
[0] => 赤
[1] => 緑色
)

[0] => 青
)

[0] => 5
[1] => 10
)
配列を分割するには 2 つの関数があります:
1.array_slice()
これは 3 つのパラメータを持ちます。パラメータ 1 はターゲット配列、パラメータ 2 はオフセット、パラメータ 3 は長さです。この機能は、ターゲット配列からオフセットから始まる長さのサブ配列を抽出することです。
offset が正の数の場合、開始位置は配列の先頭からチェックされます。 offset が負の数の場合、開始位置は配列の末尾からチェックされます。 length が正の数の場合、取り出されるサブ配列要素の数は length になります。 length が負の数の場合、サブ配列はオフセットから始まり、配列の先頭から count (ターゲット配列) - |length| で終了します。具体的には、length が空の場合、終了位置は配列の最後になります。
例:
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // "c"、"d"、および "e" を返します
$output = array_slice($input, -2, 1) // "d" を返します
; $output = array_slice($input, 0, 3); // 「a」、「b」、「c」を返します

// 配列キーの違いに注意してください
print_r(array_slice($input, 2, -1)); print_r(array_slice($input, 2, -1, true)); ?>

上記の例では次のように出力されます:
配列
(
[0] =>c
[1] => )
配列
(
[2] =>c
[3] => d
)
2.array_splice()
これは上記と同じ 3 つのパラメータを持ち、その機能はオフセットから始まる長さの部分配列を削除することです。
例:
$input = array("赤", "緑", "青", "黄");  
array_splice($input, 2);  
// $input は array("red", "green") になります
 
$input = array("赤", "緑", "青", "黄");  
array_splice($input, 1, -1);  
// $input は array("red", " yellow") になります
 
$input = array("赤", "緑", "青", "黄");  
array_splice($input, 1, count($input), "オレンジ");  
// $input は array("red", "orange") になります
 
$input = array("赤", "緑", "青", "黄");  
array_splice($input, -1, 1, array("black", "maroon"));  
// $input は array("red", "green",
) になりました // "青"、"黒"、"栗色")
 
$input = array("赤", "緑", "青", "黄");  
array_splice($input, 3, 0, "紫");  
// $input は array("red", "green",
) になりました // "青"、"紫"、"黄色");  
?>   
区别取值関数数有四个:
1.array_intersect()
保持されるパラメータは不定で、いずれも数値グループであり、すべての数値グループ内のパブリック要素の構成要素である数値グループを返します。数値グループの割り当ては、最初の数値グループにあるものから発生します。 例子:
$arrayarray1 = array("a" => "緑", "赤", "青");  
$arrayarray2 = array("b" => "緑"、"黄"、"赤");  
$result = array_intersect($array1, $array2);  
?>   
 
上の例将出:
配列
(
[a] =>緑
[0] =>赤
)
2.array_intersect_assoc()
前の関数のベースで、すべての数値グループ内の同じ値のペアを返します。 例子:
$array1 = array("a" => "緑", "b" => "茶色", "c" => "青", "赤");  
$array2 = array("a" => "緑"、"黄"、"赤");  
$result_array = array_intersect_assoc($array1, $array2);  
?>   
 
上の例将出:
配列
(
[a] =>緑
)
3.array_diff()

複数の数値グループを保持し、最初の数値グループに含まれていて、次の数値グループに含まれていないすべての値構成の新しい数値グループを返し、最初の数値グループから取得します。 例子:
$array1 = array("a" => "緑", "赤", "青", "赤");  
$array2 = array("b" => "緑"、"黄"、"赤");  
$result = array_diff($array1, $array2);  
 
print_r($result);  
?>  
 
上の例将出:
配列
(
[1] =>青
)
4.array_diff_assoc()
前の関数のベースでは、適合値を適合させる必要はありません。 例子:
$array1 = array ("a" => "緑"、"b" => "茶色"、"c" => "青"、"赤");  
$array2 = array ("a" => "緑"、"黄"、"赤");  
$result = array_diff_assoc($array1, $array2);  
?>  
 
上の例将出:
配列
(
[b] =>茶色
[c] =>青
[0] =>赤
)

著者「飞翔の人生」

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478628.html技術記事 PHP 配列の結合、分割、および差分値関数セットはすべて、PHP 配列関数が非常に強力であり、プロジェクト作業で実際に使用したときにのみ実感できると言われています。少なくとも私はそう思います。そして、今ではそれがゆっくりとわかってきました...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。