Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP Iteratorส่วนต่อประสานรวม


แนะนำตัว

IteratorAggregate อินเทอร์เฟซขยายนามธรรม สำรวจได้ อินเตอร์เฟซ. มันถูกนำไปใช้โดยคลาสเพื่อสร้างตัววนซ้ำภายนอก อินเทอร์เฟซนี้แนะนำวิธีการนามธรรมที่เรียกว่า getIterator .

ไวยากรณ์

IteratorAggregate extends Traversable {
   /* Methods */
   abstract public getIterator ( void ) : Traversable
}

วิธีการ

IteratorAggregate::getIterator — Retrieve an external iterator

ฟังก์ชันนี้ไม่มีพารามิเตอร์และส่งคืนอินสแตนซ์ของวัตถุที่ใช้ Iterator หรือ Traversable

ตัวอย่าง IteratorAggregate

ในสคริปต์ PHP ต่อไปนี้ คลาสที่ใช้อินเทอร์เฟซ IteratorAggregate มีอาร์เรย์เป็นคุณสมบัติ getIterator () เมธอดส่งคืน ArrayIterator วัตถุออกจากอาร์เรย์นี้ เราสามารถสำรวจอาร์เรย์โดยใช้ foreach วนซ้ำ

ตัวอย่าง

<?php
class myIterator implements IteratorAggregate {
   public $arr;
   public function __construct() {
      $this->arr = array(10,20,30,40);
   }
   public function getIterator() {
      return new ArrayIterator($this->arr);
   }
}
$obj = new myIterator();
foreach($obj as $key => $value) {
   echo $key ." =>" . $value . "\n";
}
?>

ผลลัพธ์

traversal ของคุณสมบัติอาร์เรย์แสดงผลดังต่อไปนี้

0=>10
1=>20
2=>30
3=>40