質問してください
$test = array();
function abc($port, $index = 0){
if (!isset($GLOBALS['test'][$index]))
$GLOBALS['test'][$index] = array();
$GLOBALS['test'][$index] [] = $port;
?> Test は元々 1 次元配列として関数の外で定義されていましたが、 $GLOBALS['test'][$index] [] = $port; このようにして、test は 2 次元配列になります。
すると、この配列の 1 行のデータの数は $port によって決まる、つまり、$port が 3 の場合、この
配列の 1 行には 3 つのデータがあることが理解できますか。 そうですか?面倒な友達は返信してくれると助かります、よろしくお願いします
ディスカッション(解決策)に返信
php の配列は伝統的な意味での配列ではありません
PHP の配列は、従来の意味での配列ではありません
2 次元配列の場合にのみ、行と列の概念をかろうじて遵守できます
xuzuning モデレーターに感謝しますご返信
$GLOBALS[' test' ][$index] [] = $port;
は
fdipzone モデレーター、ご返信ありがとうございます
you fdipzone バージョン 主の答え
しかし、まだよく理解できていないことがいくつかあります。
$GLOBALS['test'] は 3 次元配列です
$test これは 2 次元配列です
php の配列が伝統的な意味での配列ではない理由は、配列が同種である、つまり各行の列数が同じであるためです
、そして php の配列は同じですこの制約はありません array(array(1,2, 3), array(4))
さらに、配列要素の位置の値は連続した数値としてマークされており、php の配列にはこの制約がありません array(3 = > array(1,2,3), 8 => array(4) )
名前 (関連付けキー) タグ array('c' => array(1,2,3), array も使用できます(4))