配列の基本:
PHP では、配列の添え字は整数または文字列になります
PHP では、配列の要素の順序は添え字ではなく、要素の「結合」の順序によって決まります。
定義:
$arr1 = 配列(要素 1, 要素 2,...);
array(1,1.1,5,'abc',true,false); //任意のデータを保存できますが、現時点ではデフォルトの添え字です
array(2=>1,4=>1.1,3=>5,7=>'abc',0=>true); //添え字は任意に設定できます (順序は必要ありません) 、連続する必要はありません)
array(2=>1,1.1,1=>5,'abc',0=>true); //添え字を追加するかどうかを指定できます。デフォルトの下付き文字は
になります。to
// この数値の番号は次のとおりです: 2、3、1、4、0array(2=>1,'dd'=>5,1=>1.1,'abc',0=>true); //混合添字はデフォルトの添字規則にも従う
array(-2=>1,'dd'=>5,1.1,'abc',true); //負の添字は整数の添字には含まれませんが、文字の添字としてのみ扱われます
// この配列の最後の 3 つのセットは次のとおりです: 0,1,2
array(2.7=>1,'dd'=>5,1=>1.1,'abc',true); //浮動小数点数の添字は自動的に整数と小数に変換されます。パーツは直接削除されます
array("2.7"=>1,'dd'=>5,"11"=>1.1,'abc',true); //数値として扱われる純粋な数値文字列の添字
array(2=>1,'dd'=>5,true=>1.1,'abc',false=>true); //ブール値が添字として使用される場合、true は 1、 false は 0
array(2=>1,'dd'=>5,2=>1.1,'abc',true); //添字が前の添字と繰り返される場合、値は単純に上書きされます。同じ名前の前の添え字
他の形式:
$arr1[] = 1;
$arr1[] = 5;
$arr1[] = 1.1;
… //変数の直後に[]を使用して配列にし、順番に値を代入します
$arr2['aa'] = 1;
$arr2['bb'] = 5;
$arr2[5] = 1.1;
// この形式で書かれた添字は、実際には配列構文構造
を使用するのとほぼ同じです。
配列の分類:
キーと値の関係から、次のように分割されます。
連想配列: 通常、添字が文字列である配列を指し、その文字列はデータの意味を大まかに表現できます
例: $ person = Array ("name" = & gt; "poe", "age" = & gt; 18, "edu" = & gt; "大学卒業");
インデックス配列: 通常、添字が厳密に 0 から始まり、連続する数値の添字である配列を指します。js 配列
に似ています。配列レベルから分割:
1 次元配列: 配列内の各要素の値は通常の値 (非配列値)
例: $ person = Array ("name" = & gt; "poe", "age" = & gt; 18, "edu" = & gt; "大学卒業");
2 次元配列: 配列内の各項目は 1 次元配列でもあります。$person = array(
"name" => array("xiaohua","x iaofang)、
「年齢」 => array(18,22),
"教育" = & GT; 配列 ("大学卒業", "小学校",)
);
多次元配列: など。 。 。
多次元配列の一般的な構文形式:
$ v1 = 配列名の数 [Nubble] [Laying] [......]
配列トラバーサル:
トラバーサルの基本構文:
foreach($arr as [$key =>] $value) {
//$key と $value は単なる変数であるため、ここですべての可能な操作を実行できます
//$key は取得された各要素の添字を表し、数値または文字列である可能性があります
//$value は毎回取得される要素の値を表し、さまざまな型が考えられます
//このループ構造は配列の最初の項目から最後の項目までたどり、終了します
}
配列ポインタとトラバーサルの原則:
各配列の内部には「ポインター」があり、配列が現在値
を取るときに取得される要素を決定します。foreach トラバーサル プロセス中は、すべてこのポインターに依存します。
例: $arr1 = array(2=>1,'dd'=>5,1=>1.1,'abc',0=>true);
wKioL1ZNx1Sxflt6AAAnrLtN90Q498.jpg
foreach ループの位置設定に加えて、ポインターにはポインターに依存する他の関数もあります。
1: $v1 = current($arr1); //$arr1 に現在のポインターが指す要素の値を取得します。指す要素がない場合は false
2: $v1 = key($arr1); //$arr1 の現在のポインターが指す要素の添え字を取得します。 。 。 。 。 。 。 。 。 。 。 。 。
3: $v1 = next($arr1); //ポインタを「次の要素」に移動し、次の要素の値を取得します
4: $v1 = prev($arr1); //ポインタを「前の要素」に移動し、前の要素の値を取得します
5: $v1 = replace($arr1); //ポインタを「最初の要素」に移動し、要素の値を取得します
6: $v1 = end($arr1); //ポインタを「最後の要素」に移動し、要素の値を取得します
7: $v1 = each($arr1); //現在の要素の添字と値を取得し、ポインターを次の位置に移動します