ホームページ > php教程 > php手册 > PHP配列の勉強メモ

PHP配列の勉強メモ

WBOY
リリース: 2016-06-13 12:00:22
オリジナル
956 人が閲覧しました

技術的に熟練していない方は、間違いがあればご指摘いただければ修正させていただきます。

コードをコピー コードは次のとおりです:


header('Content-Type: text/html; charset=utf-8');
echo '

'; <br>function var_array($array) <br>{ <br>echo '<pre class="brush:php;toolbar:false">'; <br>var_dump($array); <br>echo '
';
関数 printr($array)
>echo '
'; 
print_r($array);
}
function getArr($sNum, $eNum=1, $step) =1)
{
$arr = range($sNum, $eNum, $step);
$reArr = array();
foreach($arr as $v)
{
$reArr[$v] = rand(0,10);
unset($arr);
return $reArr
/**
* 配列 配列の演習
*/
//------------------------------------------ ----- --
//array_change_key_case() は、最後のパラメータによって決定される配列インデックスの大文字と小文字を変更します: CASE_UPPER (大文字に変換)、CASE_LOWER (デフォルトは小文字に変換)
$ expArr = array(
' fiRsT' => '1',
'sEcoNd' => '2',
'ThIrd' => array(
'HuiMa' => '3',
' nengZhuaNma' => '5',
)
);
printr(array_change_key_case($expArr));//すべてを小文字に変換します
printr(array_change_key_case($expArr[ 'ThIrd'] , CASE_UPPER));//すべてを大文字に変換し、$expArr 配列内のインデックス キーのみを変換します
//概要: この関数は配列の 1 つのレベルにのみ影響します。 元の配列には影響しません
echo '


';
//----------- - ---------------------------------
//array_chunk($array, $size, false)
//配列を多次元配列に分割します。size は、$size ごとに配列が多次元配列になるかどうかを決定します。true/false は、新しい配列のキー値が元の配列のキー値を継承するかどうかを決定します。 >$expArr = array('4 ','2','6','d','2');
printr(array_chunk($expArr, 3)); 概要: この関数配列の 1 つのレベルにのみ影響します。 元の配列には影響しません
echo '


';
//----------- - ---------------------------------
//array_combine($keyArr, $valArr)
/ /2 つの配列を 1 つの配列に結合します。$keyArr をキー、$valArr を値とします
$expKey = array('g', 'd', 't');
$expVal = array( '5) ', '8', '7');
printr(array_combine($expKey, $expVal))
//この関数は配列の 1 つのレベルにのみ影響し、新しい配列を返します
echo '



//---------- --- --------------------
//array_count_values($array)
// $array 配列内の各値の出現数をカウントし、そしてこの値を新しい配列のキーとして使用し、出現数を値として使用します
$array = array('v1'=>'265', 'v2'=>'352', 'v3'= > ;'265', 'v4'=>'349', 'v5'=>'265');
printr(array_count_values($array));
//概要: この関数は次のことを行うことができます。文字列および整数型の値の統計値については、他の型は警告を発行します。
エコー '


'
//--------------------- ------ ------------------------
//array_diff($array1, $array2...)
/ /$array1 を他のパラメーター配列に含まれない基本配列として使用して、新しい配列
$arr1 = array('v4'=>458, 'gren', 'b5', 'a5) を形成します');
$arr2 = array('v4'=>598, 'red', 'a5', 'c4');
printr(array_diff($arr1, $arr2)); //概要: 配列を取得し、配列にない値を見つけるには、
//array_intersect($array, $parArr, ...) を使用します。 .)
//この関数は array_diff と同じ機能ですが、array_intersect() は共通のデータを返すのに対し、array_diff は $array にのみ存在するデータです。
//
echo '


;
';
//---------------------------- -------------------- ---------
//array_diff_assoc($array1, $array2...)
// array_diff() 関数と同じですが、この関数も比較にキーを使用します
//
echo '


'; /--------------------- ------------------------
//array_diff_key
//array_diff() 関数と同じ
//これは $ のみを受け取ります array1 のキーは他のパラメータの配列で検索されます
//
echo '

'
//----- ------------------------- -----------------
//array_diff_uassoc($arr1, $parArr...., コールバック関数)
//関数は array_diff( ) ですが、ユーザーはコールバック関数を定義する必要があります
//この関数の機能がわかりません
//
echo '< ;br/>
< br/>';
//--------------- ------------- -----
//array_diff_ukey($arr1, $parArr...., callback function)
//この関数は array_diff_key() と同じです。array_diff_uassoc と同じで、コールバック関数が必要です
//
//
エコー '


';
// ---------- -----------------------------------
// array_fill($startInt, $numInt, $value )
//$value を新しい配列に入力します。新しい配列の開始インデックス位置は、$startInt によって決定されます。$numInt は、この配列によって生成されるインデックスの数を制御します。
//ヒント: $value に加えて、$startInt、$numInt は数値でなければなりません。そうでない場合はエラーが報告されます。
printr(array_fill(2, 5, 'value'));概要: まだ実行することは考えていません。
echo '


'; の用途は何ですか?
//----- ------------- -----------------------------
//array_fill_keys($ arrKeys, $value);
//関数は array_fill( ) 関数と同じです。ただし、ここでは $arrKeys [配列の値] が新しい配列のキーとして使用されます
$arrKeys = array('45', 'd', 'b', 'c'); array_fill_keys ($arrKeys, 'value'));
echo '


'; - ----------------------------------
//array_filter($arr, callBack コールバック関数)
//$arr 配列の値を判断することでフィルター関数を作成し、callBack コールバック関数が true を返した場合、現在のキーと値が新しい配列に追加されます
//ヒント: コールバック関数は、ルール、ルールに準拠しない配列キーを除外するには
function cb($val)
{
return $val%2 == 0;
$array = array('k1' =>3, 'k2'=>5,'k4'=>54654, 'k5'=>8794, 8945, 32549564);
printr($array, 'cb'); );
//ヒント: コールバック関数名は引用符で囲むことをお勧めします
//概要: このメソッドはデータ フィルタリングの統合に使用できます
unset($array); 🎜>エコー '


';
//---------- ----------- -------------
//array_flip($array)
//配列内のキーと値の関係を変換します。文字列および統合型のキーのみがサポートされており、他の型については警告が発行され、問題のキー値は変換されません。生成された新しい配列では、キーが同じ場合、既存のキーの値が継続的に置き換えられます
$arr = array('k1'=>'v1', 'k2'=>' v2' , 'k3'=>'v4', 'k4'=>'v4', 'k5'=>'v5');
printr(array_flip($arr)); ($ arr);
エコー '


//--------------- -- ----------------------------
//array_key_exists($key, $array)
//かどうかを判断しますキー 現在の配列に存在し、ブール値を返します。オブジェクトの判定にも使用できます
$array = array('cb' => 234, 'dv'=>45, 'one'=>897);
if(array_key_exists('one) ', $ array))
echo 'この配列には存在します';
else
echo '存在しません'
echo '

< br/> '; --------- --
//array_keys($array, $selSearch_value)
//配列内のキー名を返し、$selSearch_value 値が指定されている場合は、新しい配列を形成します。 $selSearch_value に等しい配列内のキー名が返されます。
$array = getArr(4, 10)
printr(array_keys($array, '5); '));//値で検索
unset($array);
//概要: データ統計やデータ比較検証にも使用できます
echo '
< hr/>
';
//--------------------------------- ------------
echo 'array_map:';
//array_map('callBack', $array,...)
// 渡された関数を返しますreturn コールバック関数の戻り値
//コールバック関数は配列を返すこともできます。さらに、コールバック関数は、
function mapCb($n)
{
return $n*$n*$n;
}
$array = に渡される配列内の値のみを受け入れます。 getArr (4, 15);
printr(array_map('mapCb', $array));
echo '


'; > //-----------------------------------------------
//array_merge($array,$array2...)
//複数の配列を 1 つの配列に結合し、数値インデックスを書き換えます。
$arr1 = getArr(1, 5);
$arr2 = getArr(5, 10);
printr(array_merge($arr1, $arr2));新しい配列を形成します。
エコー '


'
//--------------------- ------ -----------------------------
//array_merge_recursive($arr1, $arr2... .)
//関数は上記と同じです。ただし、この関数は値を置き換えるのではなく、同じキー名の値を持つ新しい配列を形成します
//ただし、それを使用したい場合は、
echo '


'
//----------------------------------- ------ -------
//array_multisort()
//多次元配列のソート。現在は 2 次元配列のソートのみが実装されています。 3 次元推定はソートできません
//この関数はメンバー配列の順序を直接変更します
echo '


'; >//--- -------------------------------------- -
//array_pad($ arr, $size, $value)
// $arr の現在の長さが $size より小さい場合は、$arr 配列に $value を埋め込みます。 $arr の長さは $size
と等しい//$arr の長さが $size 以上の場合、この関数は $arr を埋めません。 $size が 0 より小さい場合は $arr の左側に埋められ、0 より大きい場合は右側に埋められます
echo '


'
//-------------------------------- -----------
//array_pop($array )
//配列の最後のキーを削除します。
エコー '


'
//--------------------- ------ -----------------------------
//array_product($arr)
//配列内のすべての値の積を返します。
//ヒント: この関数は数値以外のデータを処理できません。受信した配列に「a、b、およびその他の文字列」が含まれている場合、php はエラー
$arr = array(4,5,5);
echo array_product($arr); を報告します。



//---------------------- - -------------------
//array_push($arr, $keyArr)
//追加する $arr 配列の末尾に $keyArr を追加しますキー/スタックの形式で。
// 2 つの関数 array_merge() と array_merge_recursive() の違い:
// arrap_push() は $keyArr を $arr に追加しますが、他の 2 つの関数は複数の関数を関数
echo に接続します'



//------- ------ -----------------------
//array_rand($arr, $num=1)
//現在の配列を取得します。取り出されるキーは $num によって決定され、デフォルトは 1
//$num が 1 の場合、文字列を返します
//If $num>1 && $num//それ以外の場合、php はエラーを報告します
$arr = getArr(5, 15)
printr(array_rand($arr, 4)); > ;


//---------------------------- --- ---------------
//array_reduce()
//array_map()と同様に、配列内の値はコールバック関数を通じて処理されます戻り値は受け入れられます
//この関数は文字列を返します。これは配列内のすべての値を計算して計算値を返しますが、array_map は各キーの値を計算して配列を返します
//あまり明確ではありません。例についてはマニュアルを参照してください
echo '



//--------------------- --- --------------------
//array_replace($array, $parArr,...)
//パラメータ配列内のキーを使用しますvalue は $array
内の同じキーの値を置き換えます//対応するキーが $array 配列の後続のパラメーター配列で見つからない場合は、それを新しい配列の後ろに追加します
/*$ arr = getArr(4, 10);
$arr2 = getArr($arr);
printr($arr2);*/
$base = array( 'シトラス' => array( "オレンジ") , 'ベリー' => アレイ("ブラックベリー", "ラズベリー"), );
$replacements = array('シトラス' => '), 'berries' => array('blueberry'));
printr(array_replace($base, $replacements));
echo '

;br/>'
//-------------------------------------- ------------ -
//array_replace_recursive() 再帰置換
//関数は array_replace() と同じです。違いは、array_replace_recursive() は $array の構造を変更せずに多次元配列を操作できるのに対し、array_replace() は最終的に 1 次元配列を返すことです。
$base = array('citrus' => array( "オレンジ ") , 'ベリー' => array("ブラックベリー", "ラズベリー"), );
$replacements = array('シトラス' => 配列('パイナップル'), 'ベリー' => ; array ('blueberry'));
printr(array_replace_recursive($base, $replacements));
echo '


🎜> //------------------------------------------
//array_reverse($arr)
//配列内のキーを逆順に配置します
echo '


'; >/ /-----------------------------------------------
/ /array_search($value, $array)
//$array 配列内の値 $value を持つキー名を検索します
//見つからない場合は false を返します
//$array の場合配列に複数の $value がある場合、最初に一致したキーのみが返されます
//この関数は array_keys() に似ていますが、違いは戻り値にあります。array_search() は一致するキー名のみを返します。 while array_keys() は、一致するすべてのキーで構成される 1 次元の配列を返します
echo '


';
//---- ---- -------------------------------------
//array_shift($arr )
//現在の $arr 配列の最初のキーを削除し、後続の数値インデックスを再配置します (ただし、元の順序は変更しません)。数値以外のインデックスは変更されません。
//この関数は array_pop() に似ていますが、array_pop() は最後の関数を削除し、array_shift() は先頭を削除する点が異なります。
echo '

< ;br/> ;';
//-------------------------------------- ---------- ---
//array_slice($arr, $offset, $length=0, false) Array interception
//現在の配列の $offset から始まるオフセットを返します$arr 配列、$length 要素の合計/キーを入力して新しい配列を作成して返します
//$offset または $length が負の数の場合は、逆方向にオフセットされます
// という感じですsubstring() と同様の文字列インターセプト
//直接 PHP マニュアルの例を使用します
$input = array("a", "b", "c", "d", "e")
$output = array_slice($input, 2); // "c"、"d"、および "e" を返します
$output = array_slice($input, -2, 1); // を返します"
$output = array_slice($input, 0 , 3); // "a"、"b"、および "c" を返します
// 配列キーの違いに注意してください
printr(array_slice) ($input, 2, -1));
printr(array_slice($input, 2, -1, true));
echo '


';
//--- ------------------------------------- --------
//array_spslice($ arr, $offset, $length)
//array_slice() 関数の逆で、この関数は $offset と $length の間の要素を削除します。
unset($arr);
echo '


';
//---------- --------------- ------------------
//array_sum($arr)
//合計と数値以外の場合、$arr 配列内のすべての値を蓄積します。型の変換が試行されますが、変換後はほとんどが 0 になります。
//この関数は配列の 1 つの層にのみ影響します。 array_product()
$arr = array(
45,56, ' a', 'b'=>getArr(1, 2),
);
echo 'array_sum($arr)',array_sum($arr);
echo '


'; ------------------- -----------------------
//array_values($ arr)
//$arr 配列内の値を抽出して、
$arr = array(
'k1'=>45,'k2'=>> の新しい配列を形成します。 56、'k3'=>'a', 'b'=>getArr(1, 2 ),
printr(array_values($arr)); />


//- --------------------------- --------------------
//array_unique ($arr) Array array
//Array $arr 配列とフィルターの重複値。複数の同一の値は、最初の
echo '


'
//-------- - のみを保持します。 -----------------------------------
//array_walk($arr, callback[コールバック関数 ] , $sel_perfix='')
//現在の配列内の各キーを処理のためにコールバック関数に送信します。
//$sel_perfix パラメーターが追加された場合、コールバック関数は を受け取るために 3 つのパラメーターも必要になります。それ以外の場合は、エラーが報告されます
//この関数は 1 つのレイヤーにのみ影響します
$fruits = array("d" => "lemon", "a" => "orange", "b" => "バナナ ", "c" => "apple");
function test_alter(&$item1, $key, $prefix)
{
$item1 = "$prefix: $item1";
}
printr(array_walk($fruits, 'test_print'));
array_walk($fruits, 'test_alter', 'fruit');
echo '

'
//----------------------------------- ------------- ---------
//array_walk_recursive()
//関数は array_alk() に似ていますが、各レベルを再帰します。返された配列は元の配列構造を変更しません
echo '


'; -------------- ----------------------------
//arsort($ arr)
//配列のキー名に従って配列を並べ替えます。アルファベット順に並べ替えることもできます。ソートが失敗した場合は、null が返されます。
echo '


';
//----------- -- --------------------------------
//asort()
//関数は似ていますasort() との違いは次のとおりです: asort() は値を並べ替えます


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート