Klasa SplFixedArray SplFixedArray
&reftitle.intro; Klasa SplFixedArray oferuje główne funkcjonalności tablic. Główną różnicą między SplFixedArray a zwykłą tablicą w PHP jest fakt, że SplFixedArray musi mieć ręcznie zmieniony rozmiar i pozwala tylko na klucze numeryczne z określonego zakresu. Zaletą jest fakt, że używa mniej pamięci niż standardowy typ array.
&reftitle.classsynopsis; SplFixedArray implements IteratorAggregate ArrayAccess Countable JsonSerializable &Methods;
&reftitle.changelog; &Version; &Description; 8.2.0 Dodano metody magiczne SplFixedArray::__serialize oraz SplFixedArray::__unserialize do klasy SplFixedArray. 8.1.0 SplFixedArray implementuje teraz JsonSerializable. 8.0.0 SplFixedArray implementuje teraz IteratorAggregate. Wcześniej zamiast tego implementowany był Iterator.
&reftitle.examples; Przykład użycia <classname>SplFixedArray</classname> setSize(10); $array[9] = "asdf"; // Zmniejsz rozmiar tablicy do 2 $array->setSize(2); // Poniższe linie spowodują rzucenie RuntimeException: Index invalid or out of range, // czyli "niepoprawny indeks lub poza zakresem" try { var_dump($array["indeks-nienumeryczny"]); } catch(RuntimeException $re) { echo "RuntimeException: ".$re->getMessage()."\n"; } try { var_dump($array[-1]); } catch(RuntimeException $re) { echo "RuntimeException: ".$re->getMessage()."\n"; } try { var_dump($array[5]); } catch(RuntimeException $re) { echo "RuntimeException: ".$re->getMessage()."\n"; } ?> ]]> &example.outputs;
&reference.spl.entities.splfixedarray;