taversable php အတွက် built-in interface ဖြစ်ပါတယ်။ ၎င်းသည်မည်သည့်နည်းလမ်းများကိုမဆိုသတ်မှတ်ခြင်းမရှိသော်လည်း tag interface တစ်ခုမျှသာဖြစ်သည်။ interface ကိုအကောင်အထည်ဖော်နေသောအတန်းအစားကိုအကောင်အထည်ဖော်ရန်အတွက်အထူးသဖြင့် fonteach ထုတ်ပြန်ချက်များနှင့်အညီအသုံးပြုနိုင်သည်။
taversable interface ကိုယ်တိုင်ကမည်သည့် function ကိုမဆိုတိုက်ရိုက်မပေးနိုင်ပါ။ ၎င်း၏ function သည် traversal ကာလအတွင်းအသုံးပြုနိုင်သည့်အတန်းတစ်ခုကိုမှတ်သားရန်ဖြစ်သည်။ PHP မှ foreach ကြေညာချက်သည်ဤ interface ပေါ်တွင် travers များသို့မဟုတ်အရာဝတ်ထုများမှမှီခိုသည်။ အတန်းတစ်ခုသည် traversable interface ကိုအကောင်အထည်ဖော်သောအခါ forach ကြေညာချက်တွင်ဖြတ်သန်းသွားနိုင်သည်။
taversable interface ကိုသုံးရန်, သင်ကစိတ်ကြိုက်အတန်းထဲတွင်အကောင်အထည်ဖော်ရန်လိုအပ်သည်။ ဤ interface ကိုအကောင်အထည်ဖော်သည့်အတန်းများကို fonteach ကြေညာချက်တွင်တိုက်ရိုက်အသုံးပြုနိုင်သည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
class MyIterator implements Traversable {
private $items = [];
public function __construct(array $items) {
$this->items = $items;
}
public function getItems() {
return $this->items;
}
}
$iterator = new MyIterator([1, 2, 3]);
foreach ($iterator as $item) {
echo $item . ' ';
}
// Output: 1 2 3
ဤဥပမာတွင် Myiterator Class သည် traversable interface ကိုအကောင်အထည်ဖော်ပြီးဒြပ်စင်များကိုဖြတ်သန်းရန် Getememm နည်းလမ်းကိုပေးသည်။ Foreach ကြေငြာချက်တွင်ကျွန်ုပ်တို့သည် Myiterator Object ၏ဒြပ်စင်များ၏ဒြပ်စင်များကိုတိုက်ရိုက်ဆက်သွယ်နိုင်သည်။
Traversable interface ကိုအပြင် ITERATER Interface လို့ခေါ်တဲ့ PHP မှာအသုံးအများဆုံး interface လည်းရှိတယ်။ မဖြတ်နိုင်သည့် traveratable သည် ITERATER Interface ၏မိဘမျက်နှာပြင်ဖြစ်သည်ကိုသတိပြုသင့်သည်။ ထို့ကြောင့် ITERATER Interface ကိုအကောင်အထည်ဖော်သည့်အတန်းများသည် taversable interface ကိုအကောင်အထည်ဖော်ရမည်။
ITERATER Interface သည်လက်ရှိ, သော့, နောက်, နောက်,
များသောအားဖြင့်ကျွန်ုပ်တို့သည်စိတ်ကြိုက်အတန်းတစ်ခုတွင်, ကျွန်ုပ်တို့သည် taversable and iterator interfaces နှစ်ခုစလုံးကိုအကောင်အထည်ဖော်လိမ့်မည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည် PHP မှပါ 0 င်သော ITERATH လုပ်ငန်းများကိုလက်ရှိ,
Traversable interface သည် PHP တွင်အရေးကြီးသော interface တစ်ခုဖြစ်သည်။ ၎င်းသည်ဤ interface ကိုအကောင်အထည်ဖော်သည့်အတန်းများကိုသေချာစေရန် ATMART interface တစ်ခုအဖြစ်ဆောင်ရွက်သည်။ ဖြတ်သန်းနိုင်သော interface သည်မည်သည့်လုပ်ဆောင်နိုင်မှုကိုမျှမပေးနိုင်ပါ။ သို့သော်၎င်းသည်ဖြတ်သန်းသောအတန်းများအတွက်အရေးကြီးသောအမှတ်အသားဖြစ်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် iterator interface ကိုအတူတကွအသုံးပြုခြင်းသည်အတန်း၏ဖြတ်သန်းမှုကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်။ ဖတ်နိုင်သည်။