ホームページ  >  記事  >  バックエンド開発  >  配列ライブラリ php のいくつかの新しい関数の紹介

配列ライブラリ php のいくつかの新しい関数の紹介

WBOY
WBOYオリジナル
2016-07-29 08:35:51824ブラウズ

手元に PHP 情報があまりありません。php4gb.chm のコピーを持っていますか?私が最も感謝しているのは、関数ライブラリの部分、つまり実際のオンライン ヘルプです。しかし、PHP の開発ペースは速すぎます。最近、www.php.net/manual/ で拡張配列関数を見つけました。
それでは、私の英語レベルは高くありませんので、翻訳に間違いがあれば修正してください。
形式は次のとおりです:
関数名 サポートされているバージョン
関数の宣言
説明、パラメータ、戻り値

それでは、始めましょう
//**************** * *******
array_flip (PHP4 >= 4.0b4)
array array_flip (array trans)
配列 trans のキーと値を交換します。つまり、キーが値になり、値がキーになります。
処理された配列を返します。
例:
$a[0]="abc";
$a[1]="def";
array_flip() を実行すると、次のようになります: $a["def"; "]=1;
//***************************
array_count_values (PHP4 >= 4.0b4)
array array_count_values (配列入力)
入力配列内の各値の数を数えます。入力値をキーとして持つ配列と、出現回数を値として持つ新しい配列を返します。
例:
$array = array (1, "hello", 1, "world", "hello");
array_count_values ($array);
// 配列 (1=>2, "hello") を返します。 =>2、「世界」=>1)
//********************************* **
array_merge (PHP4)
array array_merge (array array1, array array2 [, array ...])
複数の配列をマージし、array1 の後に array2 の内容を追加します。結果の配列を返します。
文字列をキーとした連想配列の場合、同じ名前のキーが現れた場合、後者のキーが前のものを上書きし、添字配列は上書きされず最後に追加されます。
例:
$array1 = array ("color" => "red", 2, 4);
$array2 = array ("a", "b", "color" => "green", "shape) " => "trapezoid", 4);
array_merge ($array1, $array2);
//結果の配列は array("color" => "green", 2, 4, "a", "b) になります", "shape" => "trapezoid", 4).
array_merge_recursive() も参照してください。
//************************* *****
array_merge_recursive (PHP4 >= 4.0.1)
array array_merge_recursive (array array1, array array2 [, array ...])
配列を再帰的にマージします。基本的に前の関数と同様です。違いは、連想配列に関しては、同じキーを単純にマージするのではなく、同じキーの値をマージするための 2 次元配列を生成することです。 (明確に表現できなくて申し訳ありませんが、例を見てみましょう)。
例:
$ar1 = array ("color" => array ("favorite" => "red"), 5);
$ar2 = array (10, "color" => array ("favorite") => "green", "blue"));
$result = array_merge_recursive ($ar1, $ar2);
//結果の配列は array ("color" => array ("favorite" => array) (「赤」、「緑」)、「青」)、5、10) わかりますか?赤と緑は新しい配列にマージされ、お気に入りに配置されます。
array_merge() も参照してください。
//************************************
array_intersect (PHP4) >= 4.0. 1)
array array_intersect (array array1, array array2 [, array ...])
複数の配列の交差を取得し、交差要素を含む新しい配列を返します。
array1 に基づいているため、連想配列の場合、キー値は array1 になります。例を参照してください。
例:
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", " yellow", "red") ");
$result = array_intersect ($array1, $array2);
//これにより、$result は array ("a" => "green", "red");
array_diff() も参照してください。
/ /******************************************
array_diff (PHP4 > = 4.0.1)
array array_diff (array array1, array array2 [, array...])
前の関数とは異なり、これは複数の配列の差分セットです。
例:
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", " yellow", "red") ");
$result = array_diff ($array1, $array2);
//これにより、$result は array("blue");
array_intersect() も参照してください。
//********* ***********************************
array_keys (PHP4)
array_values (PHP4)
array array_keys ( array input [,mixed search_value])
array array_values (配列入力)
これら 2 つの関数は関連してまとめられています。
array_keys は配列のすべてのキーを取得できます。search_value が定義されている場合は、対応するキー値のみが取得されます。
array_values は配列入力のすべての値を取り出します。
例:
$array = array ("size" => "XL", "color" => "gold");
array_values ($array); // 配列 ("XL", "gold") を返します。 ")
$array = array (0 => 100, "color" => "red");
array_keys ($array); // 配列 (0, "color") を返します
$array = array (" blue" , "red", "green", "blue", "blue");
array_keys ($array, "blue"); // 配列 (0, 3, 4) を返します
//***** ** ***************************************
array_multisort (PHP4 >= 4.0b4) )
bool array_multisort (array ar1 [,mixed arg [,mixed ... [, array ...]]])
複数の配列を同時にソートするか、多次元配列を複数の次元でソートします。 (非常に便利です。前回は中国人ユーザーとしてこの質問をしました)。
入力配列はテーブルの列に処理され、行ごとに並べ替えられます。これは SQL ステートメントの条件による並べ替えと似ています。
この関数のパラメータは一般的ではありませんが、非常に柔軟です。ただし、配列または次のフラグです。
SORT_ASC - 昇順
SORT_DESC - 降順
SORT_REGULAR - 通常の比較
SORT_NUMERIC - 数値比較
SORT_STRING - 文字列比較
配列に 2 種類のソートフラグを同時に与えることはできません (もちろん)。各配列の後のフラグは、この配列に対してのみ有効です。デフォルトは SORT_ASC および SORT_REGULAR です。
正常な場合は true を返し、それ以外の場合は false を返します。
例 1:
$ar1 = 配列 ("10", 100, 100, "a");
$ar2 = 配列 (1, 3, "2", 1);
//結果は $ar1 = 10, "a", 100, 100 です。 $ar2= 1, 1, 2, "3" です。
例 2:
$ar = array (array ("10", 100, 100 , "a"), array (1, 3, "2", 1));
array_multisort ($ar[0], SORT_ASC, SORT_STRING,
$ar[1], SORT_NUMERIC, SORT_DESC); sort の場合、最初の配列には 10、100、100、"a" (文字列として昇順でソート) が含まれ、2 番目の配列には 1、3、"2"、1 (数値として降順でソート) が含まれます。 )
ただし、上記の例を試してみましたが、パラメータ 3 は配列である必要があるというエラーが報告されます。 (???これもわかりません)
array_multisort($ar[0],SORT_ASC,$ar[1],SORT_DESC); を直接使用すれば可能です。
//******************************************
array_pop (PHP4)
array_push
array_shift
array_unshift
mixed array_pop (配列 配列)
int array_push (配列 配列, 混合 var [, 混合...])
混合 array_shift (配列 配列)
int array_unshift (配列 配列, 混合 var [, 混合 . ..])
配列をスタックとして使用する関数。具体的な使用法は比較的単純です:
pop は最後の要素をポップアップし、要素の値を返します。
push はパラメータ var を配列の末尾に追加します。場所に戻ります。 $array[]=$var と同じ機能。配列内の新しい要素数を返します。
Shift は配列の最初の要素をポップし、他の要素を 1 ビット前方にシフトします。これは左シフトと同等です。ただし、配列の要素数は 1 つ減ります。ポップされた要素を返します。
unshift は、配列の前に 1 つ以上の要素を追加し、新しい配列番号を返します。 
例1. Array_pop() 例
$stack = Array("オレンジ", "リンゴ", "ラズベリー"); 
$fruit = array_pop ($stack); 
//この後、$stack には「オレンジ」と「リンゴ」の 2 つの要素のみが含まれ、$fruit には「ラズベリー」が含まれます。 
例 2. Array_push() の例
$stack = 配列(1, 2); 
array_push ($stack, "+", 3); 
//この例では、$stack には 4 つの要素 (1、2、"+"、3) が含まれます。
例 3. Array_shift() の例
$args = Array ("-v", "-f"); 
$opt = array_shift ($args); 
//これにより、$args には 1 つの要素「-f」が残り、$opt には「-v」が残ります。 
例4.Array_unshift()の例
$queue=array("p1","p3"); 
array_unshift ($queue, "p4", "p5", "p6"); 
//これにより、$queue には「p4」、「p5」、「p6」、「p1」、「p3」の 5 つの要素が含まれることになります。 
//****************************************
array_rand (PHP4 >= 4.0 .0)
mixed array_rand (array input [, int num_req])
数グループから 1 つまたは複数の要素を自動的に選択します。パラメータnum_req は、選択される要素の数を 1 として返します。内容は、選択された要素のキーです。
実際には、srand() を使用してランダム数子を生成します。
例 1. Array_rand() の例
srand ((double) microtime() * 10000000); 
$input = array ("ネオ"、"モーフィアス"、"トリニティ"、"サイファー"、"タンク"); 
$rand_keys = array_rand ($input, 2); 
print $input[$rand_keys[0]]."n"; 
print $input[$rand_keys[1]]."n"; 
//***************************************
array_reverse (PHP4 >= 4.0b4 )
array array_reverse (array input)
新しい数組を返し、入力された要素を逆順に取得します。 ")); 
$result = array_reverse ($input); 
//これにより、$result には array (array ("green", "red"), 4.0, "php") が含まれます。 
//*****************************************
array_slice (PHP4 )
array array_slice (array array, int offset [, int length])
オフセットの開始から、長さは長さ、終わりまで省かれて、数組の一部を取得します。
新しい数組を返します。
offset は正しい、数組のオフセット
長さは正しい場合、新しい数値グループの長さであり、場合によっては、これも数値グループからの尾数です。
例 1. Array_slice() の例
$input =配列 ("a", "b", "c", "d", "e"); 
$output = array_slice ($input, 2); // 「c」、「d」、「e」を返します
$output = array_slice ($input, 2, -1); // 「c」、「d」を返します
$output = array_slice ($input, -2, 1); // "d" を返します
$output = "array_slice"($input, 0, 3); // 「a」、「b」、「c」を返します
//******************************* **********
array_splice (PHP4 )
array array_splice (array input, int offset [, int length [, array replacement]])
从数组中移去从offset开開始,長さは長さの部ただし、replacement[] パラメータがある場合は、このパラメータを使用して削除を置き換えます。
オフセット、長さの処理については、上の例と同様に判断します。部分は、移動しない場合はオフセット位置に挿入されます。 
以下の操作等效:
array_push ($input, $x, $y) array_splice ($input, count ($input), 0,
array ($x, $y))
array_pop ($input) array_splice ($ input, -1)
array_shift ($input) array_splice ($input, 0, 1)
array_unshift ($input, $x, $y) array_splice ($input, 0, 0, array ($x, $y))
$a[$x] = $y array_splice ($input, $x, 1, $y)
その後に移動元素を含む新しい数組を返します。
例 1. Array_splice() の例
$input = array ("赤」、「緑」、「青」、「黄」); 
array_splice ($input, 2); // $input は現在 array ("red", "green")
array_splice ($input, 1, -1); // $input は現在、array ("red", " yellow")
array_splice ($input, 1, count($input), "orange"); 
// $input は array ("red", "orange")
array_splice ($input, -1, 1, array("black", "maroon")); 
// $input は array ("red", "green",
// "blue", "black", "maroon")
//*************** ********
array_unique (PHP4 >= 4.0.1)
array array_unique (array array)
ある数組の中から繰り返しの値を移動します。新しい数組を返します。最初の準備。 "); 
$result = array_unique ($input); 
//これにより、$result には array ("a" => "green", "red", "blue"); が含まれます。 
以上は、配列を介した新しい関数 php であり、側面の内容が含まれているため、PHP の教則に関心のある友人の助けになることが期待されます。

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