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)
}

添加笔记

用户贡献笔记 1 笔记

5
MuLoT
13 年前
内存占用测试

<?php
echo memory_get_usage()."\n"; // 显示 627760
$array = array_fill( 0, 2048, 'a' );
echo
memory_get_usage()."\n"; // 824744,因此 $array 为 196984

unset( $array );

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