配列のサイズを取得するには、size 関数を使用します。
string $hats[3] = {"blue", "red", "black"}; print(size($hats)); // 3
配列のサイズは、必要に応じて自動的に大きくなります。たとえば、2 つの要素を持つ配列があるとします。配列の 3 番目の要素に値を割り当てようとすると、配列のサイズが自動的に 3 要素に変わります。配列のサイズを超える要素の値を照会しようとすると、0 が返されます。string 配列では、空のクォーテーション マークが返されます。
int $scores[]; // Declared as a zero element array. $scores[150] = 3; // Now a 151 element array. $scores[200] = 5; // Now a 201 element array.
上記の 2 番目の文では、151 の配列要素を指定し、要素インデックス 150 に値 3 を代入します。3 番目の文では、配列の要素数を 201 に拡大し、要素インデックス 200 に値 5 を代入します。
配列に値を代入すると、その番号までのすべての要素に対してメモリが確保されます。気をつけていないと、配列を 1 つ宣言しただけで、使用しているコンピュータの容量を超えてしまうことがあります。たとえば、次の 2 つの文を実行した場合、ほとんどのコンピュータで Maya は強制終了します。
int $bigBoy[]; $bigBoy[123456789] = 2; // DANGER!
clear 関数を使用して配列が使用しているメモリを解放し、要素数をゼロにします。
string $hats[] = {"blue", "red", "black"}; clear($hats); print(size($hats)); // 0