လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> တင်ထားသောစစ်ထုတ်ကိရိယာများစာရင်းတစ်ခုရရှိရန် Stream_get_Filters ကိုသုံးပါ

တင်ထားသောစစ်ထုတ်ကိရိယာများစာရင်းတစ်ခုရရှိရန် Stream_get_Filters ကိုသုံးပါ

gitbox 2025-05-20

PHP တွင် stream filter များသည်အားကောင်းသောယန္တရားတစ်ခုဖြစ်ပြီး၎င်းကိုစာမဖတ်မီသို့မဟုတ်စာဖြင့်ရေးသားထားသောသို့မဟုတ်ရေးသားခြင်းမပြုမီအချက်အလက်များကိုလုပ်ဆောင်ရန်ခွင့်ပြုသည့်ယန္တရားတစ်ခုဖြစ်သည်။ ဥပမာအားဖြင့်, ဖိုင်တစ်ခုကိုဖတ်သည့်အခါအကြောင်းအရာများကိုစာလုံးအကြီးသို့အလိုအလျောက်ပြောင်းလဲနိုင်သည်, သို့မဟုတ်ကွန်ယက်တောင်းဆိုမှုသို့စာရေးသောအခါအကြောင်းအရာကိုအလိုအလျောက်ချုံ့နိုင်သည်။

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

အောက်ဖော်ပြပါတိကျသောအသုံးပြုမှုဥပမာများကိုကြည့်ကြပါစို့။

အခြေခံအသုံးပြုမှု

 <?php
$filters = stream_get_filters();

echo "loaded filter များစာရင်း:\n";
foreach ($filters as $filter) {
    echo "- {$filter}\n";
}
?>

ဒီကုဒ်ကို run ပြီးတဲ့နောက် (မင်းရဲ့ PHP ပတ်ဝန်းကျင်ပေါ်မူတည်ပြီး) အောက်ပါအတိုင်း output ကိုတွေ့ရလိမ့်မယ်။

 loaded filter များစာရင်း:
- string.rot13
- string.toupper
- string.tolower
- convert.iconv.*
- convert.*
- zlib.*
- bzip2.*

စီးဆင်းမှုကိုမှန်ကန်စွာ stream_filter_filter_propend () , stream_filter_proilte () စသည်ဖြင့်ဤစစ်ထုတ်စက်များကိုတိုက်ရိုက်အသုံးပြုနိုင်သည်။

ဥပမာ - ဖိုင်အကြောင်းအရာများကိုပြုပြင်ရန် filter များကိုအသုံးပြုပါ

ကျွန်ုပ်တို့တွင်စာသားဖိုင် ဥပမာ ရှိသည်ဟုဆိုပါစို့။ contents များသည်စာလုံးအသေးများအားလုံးဖြစ်သည်။ ကျွန်ုပ်တို့သည်၎င်းကိုဖတ်ရှုလိုပြီး output output ကိုအလိုအလျောက်ပြောင်းလဲလိုသည်။

 <?php
$filename = 'example.txt';
$handle = fopen($filename, 'r');

if ($handle) {
    stream_filter_append($handle, 'string.toupper');

    while (!feof($handle)) {
        echo fgets($handle);
    }

    fclose($handle);
} else {
    echo "ဖိုင်ကိုဖွင့ ်. မရပါ: {$filename}";
}
?>

ဤကုဒ်သည်အကြောင်းအရာကိုလက်ဖြင့်ခေါ်ဆိုခြင်းမရှိဘဲဖိုင်ကိုစာဖတ်ခြင်းမပါဘဲဖိုင်ကိုစာလုံးအကြီးသို့အလိုအလျောက်ပြောင်းလဲလိမ့်မည်

filter ကိုထောက်ခံမှုရှိမရှိစစ်ဆေးပါ

အကယ်. သင်၏ကုဒ်သည်တိကျသော filter တစ်ခုပေါ်တွင်မူတည်ပါက၎င်းသည်ပထမ ဦး ဆုံးတင်ဆောင်ခြင်းရှိမရှိစစ်ဆေးရန်အကောင်းဆုံးဖြစ်သည်။

 <?php
$neededFilter = 'string.toupper';
$filters = stream_get_filters();

if (in_array($neededFilter, $filters)) {
    echo "စိမ့်ထွက် {$neededFilter} တင်ခဲ့သည်,အသုံးပြုရန်အဆင်သင့်。\n";
} else {
    echo "စိမ့်ထွက် {$neededFilter} မရရှိနိုင်ပါ,ကျေးဇူးပြု။ ကျသင့်ငွေတွက်ပေးပါPHPကွက်ကွက်ကေျာင်း。\n";
}
?>

URL တွင် filter များကိုအသုံးပြုပါ

အချို့ဖြစ်ရပ်များတွင် PHP: // filter ကို ရယူရန်အတွက် URL မှတစ်ဆင့် stream filter တစ်ခုကိုသုံးနိုင်သည်။

 <?php
$url = 'php://filter/read=string.toupper/resource=https://gitbox.net/example.txt';
$content = file_get_contents($url);

if ($content !== false) {
    echo $content;
} else {
    echo "ဝေးလံခေါင်သီသောအရင်းအမြစ်များကိုမဖတ်နိုင်ပါ。";
}
?>

ဤကုဒ်သည် https://gitbox.net/exampexampexampexampexampexportx မှအကြောင်းအရာများကိုဖတ်နေစဉ်စာလုံးအကြီးသို့တိုက်ရိုက်ပြောင်းလဲသည်။