Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP IteratorAggregate इंटरफेस

परिचय

IteratorAggregate इंटरफेस एब्स्ट्रैक्ट Traversable इंटरफेस को एक्सटेंड करता है। यह एक क्लास द्वारा बाहरी इटरेटर बनाने के लिए इम्प्लीमेंट किया जाता है। यह इंटरफेस getIterator नामक एक एब्स्ट्रैक्ट मेथड पेश करता है।

सिंटैक्स

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

मेथड्स

IteratorAggregate::getIterator — एक बाहरी इटरेटर प्राप्त करें

इस फ़ंक्शन के कोई पैरामीटर नहीं हैं और यह 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";
}
?>

आउटपुट

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

व्याख्या: ArrayIterator एक बिल्ट-इन क्लास है जो Iterator इम्प्लीमेंट करती है। getIterator() इसे लौटाता है, जिससे foreach ऑब्जेक्ट पर सीधे काम कर सकता है।

लाभ: आंतरिक सरणी संरचना छिपी रहती है; केवल इटरेटर एक्सपोज़ होता है।

  1. - PHP में इंटरफेस समझाया गया

    इस लेख में, हम PHP इंटरफेस का उपयोग करना सीखेंगे जो PHP ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में सबसे महत्वपूर्ण संरचनात्मक पैटर्न में से एक है। एक इंटरफेस हमें प्रोग्राम बनाने में सक्षम बनाता है, उन पब्लिक मेथड्स को निर्दिष्ट करता है जिन्हें एक क्लास को इम्प्लीमेंट करना होगा, बिना उन विशिष्ट मेथड्स की ज

  1. - PHP में पॉलीमॉर्फिज्म समझाया गया

    शुरुआत में, पॉलीमॉर्फिज्म ग्रीक शब्दों Poly (जिसका अर्थ कई) और morphism (जिसका अर्थ रूप) से लिया गया है। पॉलीमॉर्फिज्म ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में एक पैटर्न का वर्णन करता है जहां विभिन्न क्लासेज में समान काम करने वाले मेथड्स का समान नाम होना चाहिए। पॉलीमॉर्फिज्म अनिवार्य रूप से एक OOP पैटर्न

  1. - PHP में interface_exists() फंक्शन

    PHP में interface_exists() फंक्शन जांचता है कि इंटरफेस परिभाषित किया गया है या नहीं। यदि name_of_interface द्वारा दिया गया इंटरफेस परिभाषित किया गया है तो TRUE लौटाता है, अन्यथा FALSE। सिंटैक्स interface_exists(name_of_interface, autoload) पैरामीटर्स name_of_interface - इंटरफेस नाम। autoload - डि