• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • SplFixedArray::fromArray()

    (PHP 5 >= 5.3.0, PHP 7)

    Import a PHP array in a SplFixedArray instance

    说明

    publicstaticSplFixedArray::fromArray(array $array[,bool $save_indexes= TRUE] ): SplFixedArray

    Import the PHP array $array in a new SplFixedArrayinstance

    参数

    $array

    The array to import.

    $save_indexes

    Try to save the numeric indexes used in the original array.

    返回值

    Returns an instance of SplFixedArray containing the array content.

    范例

    SplFixedArray::fromArray() example

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