Stream_filter_register သည် developer များက developer များက Custom filter beaction ကိုအကောင်အထည်ဖော်ရန်အတွက် developer များသတ်မှတ်ရန်နှင့် Associate ကိုသတ်မှတ်ရန်ခွင့်ပြုသည်။ ၎င်း၏အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
<Code> stream_filter_register ('MyFilter', 'MyFilterclass'; </ code>မှတ်ပုံတင်ခြင်းသည်အောင်မြင်သောအခါ, filter ကို MyFilter အမည်ဖြင့်ကျင့်သုံးနိုင်သည်။
Stream_filter_register ၏ဒုတိယ pareter သည်သတ်မှတ်ထားသောသတ်မှတ်ထားသောအတန်းအစားအမည်ဖြစ်ရမည်။ သင်ဖြတ်သန်းသွားသောအတန်းသည်မတည်ရှိပါကမှတ်ပုံတင်ခြင်းသည်မလုံလောက်ပါကသို့မဟုတ်စနစ်တကျမိတ်ဆက်ခြင်းမရှိပါက။
ဖြေရှင်းချက် -
အတန်းကိုသတ်မှတ်ထားကြောင်းနှင့် Automatic Loading ကိုအသုံးပြုပြီး class file ကိုစနစ်တကျထည့်သွင်းထားကြောင်းသေချာအောင်လုပ်ပါ။
Namespace မှန်ကန်သည်ကိုစစ်ဆေးပါ။ အတန်းအစားအမည်ရှိ parameter သည်အပြည့်အဝ namespace ပါ 0 င်သင့်သည်။
ဥပမာ -
<code> <? PHP * MyFilterClass.php လိုအပ်သည်။ // class definition file ပါဝင်သည်သေချာအောင်လုပ်ပါ steam_filter_register ('MyFilter', 'myfilterclass',
>
</ code>
စိတ်ကြိုက် filter class ကို Php_USER_FILTER မှအမွေဆက်ခံရမည်။ သို့မဟုတ်ပါကမှတ်ပုံတင်ခြင်းသည်ပျက်ကွက်လိမ့်မည်။
ဖြေရှင်းချက် -
သင်၏ filter class သည် php_user_filter ကို အမွေဆက်ခံပြီးလိုအပ်သောနည်းလမ်း filter ကို အကောင်အထည်ဖော်ရမည်။
ဥပမာ -
<code> <? PHP အမျိုးအစား Myfilterclass သည် Php_User_Filter {အများပြည်သူ function filter (ဒေါ်လာ, ဒေါ်လာကုန်သည်, ဒေါ်လာကုန်သည်, $ ပိတ်ခြင်း) {// filtering logicအကယ်. သင် stream_filter_register ကို အကြိမ်ပေါင်းများစွာမှတ်ပုံတင်ရန်အကြိမ်ကြိမ်ခေါ်ဆိုပါကမှတ်ပုံတင်ခြင်းသည်ပျက်ကွက်လိမ့်မည်။
ဖြေရှင်းချက် -
မှတ်ပုံတင်ခြင်းမပြုမီ, filter ကိုမှတ်ပုံတင်ထားခြင်းရှိမရှိစစ်ဆေးရန် stream_get_filters () ကို သုံးနိုင်သည်။
ပရိုဂရမ်ပျက်ကျမှုကိုရှောင်ရှားရန်မှတ်ပုံတင်သည့်အခါခြွင်းချက်ဖမ်းယူပါ။
ဥပမာ -
<code> <? PHP $ filter များ = stream_get_filters (); အကယ်. (! In_array (MyFilter ('MyFilter's, Filtersters))) {stream_filter_register (' MyFilter ',' MyFiltercClass '; }?> </ code>Custom stream filter များကို PHP သို့မဟုတ်အထူး PPP ဖွဲ့စည်းမှုဆိုင်ရာအဟောင်းများဗားရှင်းအချို့တွင်မထောက်ပံ့နိုင်ပါ။
ဖြေရှင်းချက် -
PHP ဗားရှင်းသည် stream_filter_register (php5.0.0 + အထောက်အပံ့) ကိုထောက်ပံ့သည်ကိုစစ်ဆေးပါ။
စီးဆင်းမှုစစ်ထုတ်ခြင်းဆိုင်ရာအင်္ဂါရပ်များကိုပိတ်ထားသည်ကိုသေချာအောင်လုပ်ပါ။
Php.ini configurations တွင် disable_rofunctions disable လုပ်ခြင်းမရှိသေးပါ,
တခါတရံမှာ Code Execute အမိန့်, နယ်ပယ်,
ဖြေရှင်းချက် -
မှတ်ပုံတင်ထားသောကုဒ်သည်အချိန်တန်လျှင်ကွပ်မျက်ရန်သေချာအောင်လုပ်ပါ။
CLI နှင့် web ပတ် 0 န်းကျင်ဆိုင်ရာခြားနားချက်ကွဲပြားခြားနားပါက၎င်းတို့ကိုသီးခြားစမ်းသပ်ရန်ကြိုးစားပါ။
PHP operating ပတ်ဝန်းကျင်တွင်လုံလောက်သောခွင့်ပြုချက်ရှိကြောင်းသေချာပါစေ။
stream_filter_register မှတ်ပုံတင်ခြင်းမအောင်မြင်ပါကအောက်ပါအချက်များကိုပိုမိုနှစ်သက်သည်။
ထုံးစံ filter အတန်းအစားတည်ရှိပြီးမှန်မှန်ကန်ကန် loads ။
filter class သည် php_user_filter မှအမွေဆက်ခံသည်ဖြစ်စေ။
တူညီသောအမည်နှင့်အတူ filter ကိုအကြိမ်ကြိမ်မှတ်ပုံတင်ခဲ့သလား။
PHP ဗားရှင်းနှင့်ပြင်ဆင်မှုသည်ဤ function ကိုထောက်ခံသည်။
Code Execution Timing နှင့်ပတ် 0 န်းကျင်ဆိုင်ရာခွင့်ပြုချက်ပြ issues နာများ။
အထက်ပါသော့ချက်အချက်များကိုကျွမ်းကျင်ပြီးနောက်သင်အခြေခံအားဖြင့်နေရာချထားခြင်းဆိုင်ရာချို့ယွင်းချက်ဆိုင်ရာပြ problems နာများကိုဖြေရှင်းနိုင်ရန်နှင့်သင်၏ထုံးစံအတိုင်းစီးဆင်းမှု filter ကို၎င်း၏အခန်းကဏ် play မှပါ 0 င်ရန်ခွင့်ပြုနိုင်သည်။