當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP iterator_to_array()用法及代碼示例


iterator_to_array()function 是 PHP 中的內置函數,用於將迭代器對象(例如實現 Iterator 或 IteratorAggregate 接口的對象)複製到數組中。迭代器是一個對象,允許您一次循環一組值,而無需了解底層數據結構。

用法:

array iterator_to_array(
Traversable | array $iterator, 
bool $preserve_keys = true
)

Parameters: 該函數接受兩個參數,如下所述。

  • $iterator: 這是您要複製到數組中的迭代器。
  • $preserve_keys: 這是一個可選參數。它指定是否使用迭代器鍵作為數組鍵。默認情況下該值為 true。 這意味著數組將保留迭代器中的原始鍵。如果設置為false,數組將使用從 0 開始的數字鍵重新索引。

返回值: iterator_to_array()函數返回包含迭代器所有值的數組。

程序1:下麵的程序演示了iterator_to_array()函數。

PHP


<?php 
  
class SimpleIterator implements Iterator { 
    private $position = 0; 
      
    private $data = array('apple',  
        'banana', 'cherry', 'date'); 
  
    public function rewind() { 
        $this->position = 0; 
    } 
  
    public function current() { 
        return $this->data[$this->position]; 
    } 
  
    public function key() { 
        return $this->position; 
    } 
  
    public function next() { 
        ++$this->position; 
    } 
  
    public function valid() { 
        return isset($this->data[$this->position]); 
    } 
} 
  
$iterator = new SimpleIterator(); 
$array = iterator_to_array($iterator); 
  
print_r($array); 
  
?>
輸出
Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => date
)

程序2:下麵的程序演示了iterator_to_array()函數。

PHP


<?php 
      
// Create an Array 
$data = [100, 200, 300, 400]; 
  
// Create an ArrayIterator with array data 
$iterator = new ArrayIterator($data); 
  
// Convert the iterator to an array 
// without preserving keys 
$array = iterator_to_array($iterator, false); 
  
// Print the resulting array 
print_r($array); 
  
?>

輸出

Array
(
[0] => 100
[1] => 200
[2] => 300
[3] => 400
)

參考:https://www.php.net/manual/en/function.iterator-to-array.php



相關用法


注:本文由純淨天空篩選整理自neeraj3304大神的英文原創作品 PHP iterator_to_array() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。