Object Itration in PHP

 PHP हमें ऐसी सुविधा भी देता है कि हम  Object Iteration
Statement का प्रयोग करके किसी Object के सभी Accessible Properties को ठीक उसी तरह से Scan कर सकें, जिस तरह से किसी Array के विभिन्न Elements
 की Keyes व Values को Access करते हैं। Default रूप से सभी Visible Properties इस Iteration में Use होती हैं। इसे समझने के लिए हम एक उदाहरण देखते हैं:


<?php
class MyClass
{
    public $var1 = 'value 1';
    public $var2 = 'value 2';
    public $var3 = 'value 3';

    protected $protected = 'protected var';
    private   $private   = 'private var';

    function iterateVisible() {
       echo "MyClass::iterateVisible:\n";
       foreach ($this as $key => $value) {
           print "$key => $value\n";
       }
    }
}

$class = new MyClass();

foreach($class as $key => $value) {
    print "$key => $value\n";
}
echo "\n";


$class->iterateVisible();

?>


The above example will output:

var1 => value 1
var2 => value 2
var3 => value 3

MyClass::iterateVisible:
var1 => value 1
var2 => value 2
var3 => value 3
protected => protected var
private => private var


इस Program में हम देख सकते हैं कि हमने foreach Statement को Demo Class के Object के साथ Exactly उसी तरह से Use किया है,
जिस तरह से हम इसे किसी Array के Elements की Keys व Values को Access करने के लिए Use करते हैं। यदि हम चाहें, तो foreach
Statement को Class के बाहर भी ठीक इसी तरह से Use कर सकते हैं, लेकिन उस स्थिति में केवल Class के Public Members ही Access होंगे। जैसेः

No comments:

Post a Comment

Pages