CakeFest 2024: The Official CakePHP Conference

SplFixedArray::fromArray

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SplFixedArray::fromArrayИмпортирует PHP-массив в объект класса SplFixedArray

Описание

public static SplFixedArray::fromArray(array $array, bool $preserveKeys = true): SplFixedArray

Импортирует PHP-массив array в новый объект класса SplFixedArray

Список параметров

array

Массив, который следует импортировать.

preserveKeys

По возможности сохранить численные индексы, заданные в оригинальном массиве.

Возвращаемые значения

Возвращает объект класса SplFixedArray, содержащий данные из импортированного массива.

Примеры

Пример #1 Пример использования SplFixedArray::fromArray()

<?php
$fa
= SplFixedArray::fromArray(array(1 => 1, 0 => 2, 3 => 3));

var_dump($fa);

$fa = SplFixedArray::fromArray(array(1 => 1, 0 => 2, 3 => 3), false);

var_dump($fa);
?>

Результат выполнения приведённого примера:

object(SplFixedArray)#1 (4) {
  [0]=>
  int(2)
  [1]=>
  int(1)
  [2]=>
  NULL
  [3]=>
  int(3)
}
object(SplFixedArray)#2 (3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

add a note

User Contributed Notes 1 note

up
5
MuLoT
13 years ago
Memory footprint tests :

<?php
echo memory_get_usage()."\n"; // display 627760
$array = array_fill( 0, 2048, 'a' );
echo
memory_get_usage()."\n"; // 824744, so 196984 for $array

unset( $array );

echo
memory_get_usage()."\n"; // 627792
$spl=SplFixedArray::fromArray( array_fill( 0, 2048, 'a' ) );
echo
memory_get_usage()."\n"; //644944, so just 17151 for $spl !!!
?>
To Top