PHP တွင် ITERator သည်အရာဝတ်ထုများကို array ကဲ့သို့ဖြတ်သန်းရန်ခွင့်ပြုသည့်အဓိကမျက်နှာပြင်တစ်ခုဖြစ်သည်။ ITERATER Interface ၏နည်းလမ်းငါးခုကိုအကောင်အထည်ဖော်ခြင်းအားဖြင့်အတန်း၏ဖြစ်ရပ်များသည် fonteach ထုတ်ပြန်ချက်များကို အသုံးပြု. ဆက်သွယ်နိုင်သည်။
ITERATER Interface သည်အောက်ပါနည်းလမ်းငါးခုကိုသတ်မှတ်သည်။
ဤ interface ကိုအကောင်အထည်ဖော်ရန်အတွက် built-in အတန်းအစားမျိုးစုံ (ဥပမာ Arrayraterlinkedlinterlist လုပ်သူများ ) ဤ interface ကိုအကောင်အထည်ဖော်ရန်ဤ interface ကို အကောင်အထည်ဖော်ရန် အတွက်၎င်းကို foreach loop တွင်တိုက်ရိုက်အသုံးပြုနိုင်သည်။
PHP တွင် Array သည်သဘာဝအားဖြင့် Traversal အတွက် fonteach ထုတ်ပြန်ချက်များကိုသဘာဝကျကျထောက်ပံ့သည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
$arr = array('a', 'b', 'c');
foreach ($arr as $key => $value) {
echo "$key: $value\n";
}
Array ကိုဤနည်းဖြင့်ဖြတ်သန်းခြင်းအားဖြင့်ကုဒ်သည်တိကျသော code ကိုအတိုချုပ်မျှသာမဟုတ်ဘဲကိုယ်တိုင်ခင်းကျင်းသောစာရင်းတွင်စာဖြင့်ပြုလုပ်သောပြ problem နာကိုလည်းရှောင်ရှားသည်။
array များအပြင် developer များသည်လည်းအတန်းများကိုစိတ်ကြိုက်ပြုပြင်ပြီး ITERATER Interface ကိုအကောင်အထည်ဖော်နိုင်သည် ။ ဤတွင် Custom Iterator အတန်းအစား၏ဥပမာတစ်ခုဖြစ်သည်။
class MyIterator implements Iterator {
private $position = 0;
private $array = array(
"firstelement",
"secondelement",
"lastelement",
);
public function __construct() {
$this->position = 0;
}
public function rewind() {
$this->position = 0;
}
public function current() {
return $this->array[$this->position];
}
public function key() {
return $this->position;
}
public function next() {
++$this->position;
}
public function valid() {
return isset($this->array[$this->position]);
}
}
$it = new MyIterator;
foreach ($it as $key => $value) {
echo "$key: $value\n";
}
ဤကုဒ်တွင် Myiterator Class သည်၎င်း၏ဥပမာအားဖြင့်အရာဝတ်ထုများကို array ကဲ့သို့သော travers ကိုဖွင့်ရန် ITERATER Interface ၏နည်းလမ်းငါးခုကိုအကောင်အထည်ဖော်သည်။ ဤနည်းလမ်းသည်ဒေတာအဆောက်အအုံများသို့မဟုတ်စိတ်ကြိုက် 0 င်ရောက်နိုင်သည့်ယုတ္တိဗေဒလိုအပ်သည့်အခြေအနေများအတွက်သင့်တော်သည်။
ITERATER Interface သည် PHP တွင်ဒေတာဖြတ်သန်းမှုအတွက်စည်းလုံးညီညွတ်သောစံသတ်မှတ်ချက်ကိုပေးသည်။ ၎င်းသည် interface ကိုအကောင်အထည်ဖော်နေသမျှကာလပတ်လုံး၎င်းသည်ခင်းကျင်း သော incray တစ်ခု, communist object တစ်ခုဖြစ်စေ, စိတ်ကြိုက်ကြားနာသူများအားဖြင့် developer များသည် data access method များကိုပြောင်းလွယ်ပြင်လွယ်ထိန်းချုပ်နိုင်ပြီး၎င်းတို့၏ကုဒ်၏ထိန်းသိမ်းမှုနှင့်ပမာဏကိုတိုးတက်စေနိုင်သည်။