<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 本文与程序无关,这里仅作为演示 PHP 代码块使用</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文章即将开始,请往下看..."</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-comment"># PHP中fgetss函数怎么用?完整用法详解适合新手了解</span></span><span>
在日常 PHP 编程中,我们经常需要从文件中逐行读取内容。常用的函数有 `</span><span><span class="hljs-title function_ invoke__">fgets</span></span><span>()`,但如果文件中包含 HTML 或 PHP 标签,有时我们并不希望这些标签直接保留。这时候,`</span><span><span class="hljs-title function_ invoke__">fgetss</span></span><span>()` 就派上用场了。
</span><span><span class="hljs-comment">## 一、fgetss函数的基本介绍</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">fgetss</span></span><span>()` 是 PHP 提供的一个文件读取函数,与 `</span><span><span class="hljs-title function_ invoke__">fgets</span></span><span>()` 类似,区别在于它会在读取时**自动去除 HTML 和 PHP 标签**,从而避免一些潜在的安全问题。它常被用于处理用户上传的文本文件,或者在读取带有 HTML 标签的文件时,只保留纯文本内容。
**函数原型:**
```php
</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-title function_ invoke__">fgetss</span></span><span> ( resource </span><span><span class="hljs-variable">$handle</span></span><span> , </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$length</span></span><span> [, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$allowable_tags</span></span><span> ] )
</span></span>
: fopen ဖွင့်လှစ်ထားတဲ့ဖိုင်လက်ကိုင်တစ်ခု။
$ အရှည် - တစ်ချိန်ချိန်တွင်ဘတ်စ်ကားအများဆုံးအရေအတွက်။
$ liftable_tags (optional): ထိန်းသိမ်းထား HTML tags များကိုထိန်းသိမ်းထားသည်။
Fgets () - HTML tags များအပါအ 0 င်ဖိုင်အတွင်းရှိလိုင်းကိုလုံးဝဖတ်ပါ။
fgetsss () : စာဖတ်ခြင်း, HTML နှင့် PHP tags များကို filter လုပ်ထားသည့်အခါစာသားများကိုသာလက်ဝါးကပ်တိုင်စာသားကိုထိန်းသိမ်းထားသည် (partial tags များကို parametersters အားဖြင့်ခွင့်မပြုပါ)
ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$fp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-string">"test.txt"</span></span><span>, </span><span><span class="hljs-string">"r"</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">fgets</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>); </span><span><span class="hljs-comment">// output ကို output ကိုပါလိမ့်မယ်HTMLtag ကို၏အပြည့်အဝအကြောင်းအရာ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">fgetss</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>); </span><span><span class="hljs-comment">// အလိုအလျောက်ဖယ်ရှားလိမ့်မည်HTMLကပ်တံဆိပ်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>);
</span></span>Test.txt ဖိုင်၏အကြောင်းအရာမှာ -
<span><span><span class="hljs-tag"><<span class="hljs-name">b</span></span></span><span>>ဒါကရဲရင့်တဲ့စာသားပါ</span><span><span class="hljs-tag"></<span class="hljs-name">b</span></span></span><span>>
</span></span>output ရလဒ် -
<span><span>ဒါကရဲရင့်တဲ့စာသားပါ
</span></span>အကယ်. ကျွန်ုပ်တို့သည် HTML tags အချို့ကိုဆက်လက်ထိန်းသိမ်းထားလိုပါကတတိယ parameter မှတစ်ဆင့်အကောင်အထည်ဖော်နိုင်သည်။
ဥပမာ -
<span><span><span class="hljs-variable">$fp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-string">"test.txt"</span></span><span>, </span><span><span class="hljs-string">"r"</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">fgetss</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>, </span><span><span class="hljs-number">1024</span></span><span>, </span><span><span class="hljs-string">"<b><i>"</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>);
</span></span>test.txt ၏အကြောင်းအရာသည်:
<span><span><span class="hljs-tag"><<span class="hljs-name">b</span></span></span><span>>ရဲရင့်သော</span><span><span class="hljs-tag"></<span class="hljs-name">b</span></span></span><span>>နှင့်</span><span><span class="hljs-tag"><<span class="hljs-name">i</span></span></span><span>>စာလုံးစောင်း</span><span><span class="hljs-tag"></<span class="hljs-name">i</span></span></span><span>>လည်းပဲ</span><span><span class="hljs-tag"><<span class="hljs-name">u</span></span></span><span>>မျဉ်းသား, အလေးအနက်ပေြာ</span><span><span class="hljs-tag"></<span class="hljs-name">u</span></span></span><span>>
</span></span>output ရလဒ် -
<span><span><span class="hljs-tag"><<span class="hljs-name">b</span></span></span><span>>ရဲရင့်သော</span><span><span class="hljs-tag"></<span class="hljs-name">b</span></span></span><span>>နှင့်</span><span><span class="hljs-tag"><<span class="hljs-name">i</span></span></span><span>>စာလုံးစောင်း</span><span><span class="hljs-tag"></<span class="hljs-name">i</span></span></span><span>>လည်းပဲမျဉ်းသား, အလေးအနက်ပေြာ
</span></span><u> ကို ဖယ်ရှားလိုက်တဲ့ <b> နဲ့ tags တွေကို သိမ်းထားတယ်ဆိုတာကိုသင်တွေ့နိုင်တယ်။
coding ပြ issues နာများ - ဖိုင်တွင်တရုတ်လူမျိုးများရှိပါက (UTF-8 ကဲ့သို့) သင့်လျော်သော encoding format ကိုသုံးရန်သတိထားပါ။
စွမ်းဆောင်ရည်ပြ issues နာများ - FIGCESS () သည် ၎င်းကို ခေါ်သည့်အခါတိုင်း tag filtering ကိုလုပ်ဆောင်လိမ့်မည်။
PHP ဗားရှင်း - PHP 7.3 ပြီးနောက် FGEGCESS () ကိုဖယ်ရှားပစ်လိုက်ခြင်းကိုသတိပြုသင့်သည်။ အခြားရွေးချယ်စရာတစ်ခုမှာ Fgets () ကို strip_tags () နှင့်အသုံးပြုခြင်းဖြစ်သည်။
<span><span><span class="hljs-variable">$line</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fgets</span></span><span>(</span><span><span class="hljs-variable">$fp</span></span><span>);
</span><span><span class="hljs-variable">$line</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strip_tags</span></span><span>(</span><span><span class="hljs-variable">$line</span></span><span>, </span><span><span class="hljs-string">"<b><i>"</span></span><span>);
</span></span>Fetnss () သည်စာဖတ်ခြင်းလုပ်ငန်းစဉ်အတွင်း HTML နှင့် PHP tags များကိုအလိုအလျောက်ဖယ်ရှားနိုင်သောအဆင်ပြေသောဖိုင်ဖတ်ခြင်း function ဖြစ်သည်။
အချို့သော tags များကိုဆက်လက်ထိန်းသိမ်းရန်လိုအပ်သည့်အမှုပေါင်းများအတွက်၎င်းတို့ကိုတတိယ parameter မှတစ်ဆင့်သတ်မှတ်နိုင်သည်။
PHP ဗားရှင်းအသစ်တွင် Fgets () + strip_tags () ပေါင်းစပ်ခြင်း () ပေါင်းစပ်ခြင်းအတွက်တူညီသောလုပ်ဆောင်မှုကိုရရှိရန်အသုံးပြုရန်အကြံပြုသည်။
ဒီဆောင်းပါးကတဆင့်အတွေ့အကြုံမရှိသေးတဲ့ fgetsss ၏အသုံးပြုမှုကိုနားလည်သဘောပေါက်နိုင်ပြီး,