လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> stream filters များ၏ status နှင့်ဂုဏ်သတ္တိများကိုကြည့်ရှုရန် stream_get_filters ကိုသုံးပါ

stream filters များ၏ status နှင့်ဂုဏ်သတ္တိများကိုကြည့်ရှုရန် stream_get_filters ကိုသုံးပါ

gitbox 2025-05-19

PHP တွင် Subeam ** သည်ဖိုင်များ, ကွန်ယက်များနှင့်မှတ်ဉာဏ်ကဲ့သို့သောအရင်းအမြစ်များကိုလုပ်ဆောင်ရန်စည်းလုံးညီညွတ်သောနည်းလမ်းဖြစ်သည်။ Stream filter တစ်ခုသည်ဒေတာကိုဖတ်ရန် (သို့) ရေးသားခြင်းကိုဖတ်ရှုခြင်းသို့မဟုတ်ရေးသားခြင်းကိုပြုလုပ်သောအခါစီးဆင်းနေသောကိရိယာတစ်ခုနှင့်ဆက်စပ်သောကိရိယာတစ်ခုဖြစ်သည်။ PHP သည်လက်ရှိရရှိနိုင်သည့် filter များကိုကြည့်ရှုရန် built-in function stream_get_filters () ကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည်သင့်အားမည်သို့အသုံးပြုရမည်ကိုလေ့လာရန်နှင့်ဤစစ်တမ်းများ၏အခြေအနေနှင့်ဂုဏ်သတ္တိများကိုမည်သို့ကြည့်ရှုရန်မည်သို့လေ့လာရမည်ကိုလေ့လာပါလိမ့်မည်။

1 ။ stream_get_filters () ကဘာလဲ

stream_get_filters () PHP stream စနစ်တွင်လက်ရှိမှတ်ပုံတင်ထားသောစစ်ထုတ်သည့်အမည်များအားလုံးကိုပြန်လည်ပေးအပ်သောရိုးရှင်းသောသို့သော်လက်တွေ့လုပ်ဆောင်ချက်ဖြစ်သည်။

 $filters = stream_get_filters();
print_r($filters);

ရလဒ်အနေဖြင့်ရလဒ်များသည်များသောအားဖြင့် possessings:

 Array
(
    [0] => zlib.*
    [1] => string.rot13
    [2] => string.toupper
    [3] => convert.iconv.*
    ...
)

ဤအမည်များသည် zlib.deflate , string.toupper စသည့်စမ်းချောင်းနှင့်ချိတ်ဆက်နိုင်သောစစ်ထုတ်စက်များနှင့်ကိုက်ညီသည်။

2 ။ filter ၏ status နှင့်ဂုဏ်သတ္တိများကိုကြည့်နည်း။

stream_get_filters () သူ့ဟာသူသည် filter names များကိုသာစာရင်းပြုစုထားသော်လည်းအခြားလုပ်ဆောင်မှုများနှင့်ပေါင်းစပ်ပြီး fune များကိုထုတ်လွှင့်ရန်နှင့်စမ်းသပ်မှုများမှတဆင့်သူတို့၏အပြုအမူများကိုသင်ပြုလုပ်နိုင်သည်။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။

 <?php
$stream = fopen('php://temp', 'w+');

// အပိုဆောင်းစစ်ထုတ်ကိရိယာများ
stream_filter_append($stream, 'string.toupper');

// စာလုံးအသေးများရေးပါ
fwrite($stream, 'gitbox.net test');

// စီး၏ start အနေအထားကိုပြန်သွားပါ
rewind($stream);

// ရလဒ်ကိုဖတ်ရှုခြင်းနှင့် output ကို
echo stream_get_contents($stream);

// စီးကိုပိတ်ပါ
fclose($stream);
?>

အထက်ပါကုဒ်သည် output ကိုဖြစ်လိမ့်မည်။

 GITBOX.NET TEST

ဤအချက်က string.toupper filter သည်စာလုံးအသေးများကိုစာလုံးအကြီးသို့ပြောင်းလဲနေသည်ကိုဖော်ပြသည်။

3 ။ အသေးစိတ်အချက်အလက်များကိုပိုမိုအသေးစိတ်ရယူပါ

PHP တွင် "Properties" ကိုရရှိရန် "Properties" ကိုရရှိရန် "Properties" ၏အသေးစိတ်အချက်အလက်များသို့မဟုတ်အသေးစိတ်အချက်အလက်များနှင့်အသေးစိတ်အချက်အလက်များကဲ့သို့ပင်၎င်းသည်စာရွက်စာတမ်းများသို့မဟုတ်စမ်းသပ်ချက်များမှတဆင့်သင်ယူနိုင်သည်။

Zlib.Deflate ကဲ့သို့သောရှုပ်ထွေးသောစစ်ထုတ်စက်များအတွက်သင်၏ compression အကျိုးသက်ရောက်မှုကိုသင်စစ်ဆေးနိုင်သည်။

 <?php
$data = str_repeat('gitbox.net ', 10);
$stream = fopen('php://temp', 'w+');

// ပူးတွဲပါ zlib.deflate စိမ့်ထွက်
stream_filter_append($stream, 'zlib.deflate');

// ဒေတာရေးပါ
fwrite($stream, $data);
rewind($stream);

// compressed ဒေတာကိုဖတ်ပါ
$compressed = stream_get_contents($stream);

echo 'မူရင်းအရှည်: ' . strlen($data) . PHP_EOL;
echo 'ချုံ့အရှည်: ' . strlen($compressed) . PHP_EOL;

fclose($stream);
?>

သင်အရှည်နှိုင်းယှဉ်မှုနှင့်မနှိုင်းယှဉ်မီနှင့်အပြီးနှင့်နှိုင်းယှဉ်ပါကဤ filter ကိုနားလည်ရန်ကူညီလိမ့်မည်။

4 ။ အကျဉ်းချုပ်

  • လက်ရှိရရှိနိုင်သည့် filter list ရရှိရန် stream_get_filters () ကို သုံးပါ။

  • filter ကို filter သို့ dvern_filter_append () ကို အသုံးပြုပါ။ filter ၏အမှန်တကယ်အကျိုးသက်ရောက်မှုကိုလေ့လာရန် Fille () နှင့် fread () ကဲ့သို့သောလုပ်ဆောင်မှုများကိုပေါင်းစပ်ပါ။

  • အသေးစိတ်အတွက်တော့တရားဝင် PHP မှတ်တမ်းများကိုစမ်းသပ်ချက်မှတစ်ဆင့်လေ့လာရန်သို့မဟုတ်စူးစမ်းလေ့လာရန်အကြံပြုသည်။

ဤနည်းစနစ်များကိုကျွမ်းကျင်စေခြင်းအားဖြင့်သင်သည် PHP streaming system ကိုဖိုင်စစ်ဆင်ရေး, ကွန်ယက်ဆက်သွယ်ရေးသို့မဟုတ်ဒေတာပြောင်းလဲခြင်းရှိမရှိလုပ်ငန်းစဉ်များကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိလိမ့်မည်။

အကယ်. အသေးစိတ်အချက်အလက်များကိုပိုမိုအသေးစိတ်ကြည့်ရှုရန်လိုအပ်ပါက https://gitbox.net/docs/php-stream -Filts သို့ သင်ဝင်ရောက်ကြည့်ရှုနိုင်သည်။