File_get_Contents () သည်ရိုးရှင်းသောဖိုင်ဖတ်ခြင်း function တစ်ခုဖြစ်သည်။ ၎င်း၏အခြေခံလုပ်ဆောင်ချက်သည်ဖိုင်တစ်ခုလုံး၏ contents များကိုဖတ်ပြီးပြန်ပို့ရန်ဖြစ်သည်။ ၎င်းကိုစာသားဖိုင်များကိုဖတ်ရန်အသုံးပြုလေ့ရှိပြီးသေးငယ်သော binary files များအတွက်လည်းအလွန်သင့်လျော်သည်။ သို့သော်ကြီးမားသောဖိုင်များ (သို့) compressed files များအတွက်ဤလုပ်ဆောင်မှု၏ထိရောက်မှုနှင့်သက်ဆိုင်မှုသည်အကန့်အသတ်ရှိနိုင်သည်။
PHP တွင် File_Get_Contents () ဖိုင်ကိုမှတ်ဉာဏ်ထဲသို့တိုက်ရိုက်ဖွင့်လိမ့်မည်။ ထို့ကြောင့်ဖိုင်သည်ကြီးမားသည့်အခါမှတ်ဥာဏ်အသုံးပြုခြင်းသည်မြင့်မားလိမ့်မည်။ ၎င်းသည်မှတ်ဥာဏ်လျှံယိုယွင်းစေနိုင်သည်။ compressed files များအတွက် File_Get_contents () သည်၎င်း၏ binary data များကိုဖတ်ရှုနိုင်ရန်နှင့်၎င်းတွင်ပါ 0 င်သောအရာများကိုတိုက်ရိုက်မလိုက်နာနိုင်ပါ။
ZIP ဖိုင်သည်မရှိမဖြစ်လိုအပ်သောဖိုင်များသို့မဟုတ်လမ်းညွှန်မျိုးစုံပါ 0 င်သော binary format ဖြင့် compressed file တစ်ခုရှိသည်။ File_Get_contents () compressed file တစ်ခုလုံး၏မူလ binary data များကိုဖတ်သည်။ ဆိုလိုသည်မှာကျွန်ုပ်တို့သည် Zip file ကိုတိုက်ရိုက်ဖတ်ပါက,
ထို့ကြောင့်ကျွန်ုပ်တို့သည် ZIP ဖိုင်မှဖိုင်တစ်ခု၏ contents များကိုထုတ်ယူလိုပါက File_get_Contents () သည် ဤလုပ်ငန်းကိုတိုက်ရိုက်မဖြည့်ဆည်းနိုင်ပါ။ ဖိုင်များကိုဖတ်ရှုနိုင်ရန်အတွက်ဇစ်ဖိုင်၏ contents ကို decompress လုပ်ရန်လိုအပ်သည်။
File_get_Contents () သည် Zip file ရှိတိကျသောအကြောင်းအရာများကိုတိုက်ရိုက်မဖတ်နိုင်ပါက PHP ၏ built-in Ziparchive class ကိုသုံးနိုင်သည်။ ဤအတန်းသည်ကျွန်ုပ်တို့အား ZIP ဖိုင်များကိုဖွင့်ရန်, ဖတ်ရန်နှင့် decomppress လုပ်ရန်ခွင့်ပြုသည်။ အောက်ပါသည်ဇစ်ဖိုင်၏ contents ကိုဖတ်ရန် Ziparchive ကို အသုံးပြုခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$zipFile</span></span><span> = </span><span><span class="hljs-string">'example.zip'</span></span><span>; </span><span><span class="hljs-comment">// ZIP ဖိုင်လမ်းကြောင်း</span></span><span>
</span><span><span class="hljs-variable">$zip</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">ZipArchive</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">open</span></span><span>(</span><span><span class="hljs-variable">$zipFile</span></span><span>) === </span><span><span class="hljs-literal">TRUE</span></span><span>) {
</span><span><span class="hljs-comment">// ရယူ ZIP ဖိုင်တွင်ပထမဆုံးဖိုင်အမည်</span></span><span>
</span><span><span class="hljs-variable">$fileName</span></span><span> = </span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">getNameIndex</span></span><span>(</span><span><span class="hljs-number">0</span></span><span>); </span><span><span class="hljs-comment">// ရယူ第一个စာချုပ်စာတမ်း的名称</span></span><span>
</span><span><span class="hljs-comment">// ဖိုင်၏ contents ကိုဖတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$fileContent</span></span><span> = </span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">getFromName</span></span><span>(</span><span><span class="hljs-variable">$fileName</span></span><span>);
</span><span><span class="hljs-comment">// output ဖိုင်အကြောင်းအရာ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$fileContent</span></span><span>;
</span><span><span class="hljs-comment">// ရုပ်သိမ်းခြင်း ZIP စာချုပ်စာတမ်း</span></span><span>
</span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">'ဖွင့်လို့မရဘူး ZIP စာချုပ်စာတမ်း!'</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
ဒီဥပမာမှာ Zip file ကိုဖွင့်ဖို့ Ziparchive Class ကို ဦး စွာသုံးပြီး zip file ထဲမှာပထမဆုံးဖိုင်ရဲ့ contents တွေကိုဖတ်ဖို့ GetFromname () နည်းလမ်းကိုသုံးပါ။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည် compressed file တစ်ခုလုံး၏ binary data များကိုတိုက်ရိုက်ဖတ်မည့်အစား compressed package ထဲတွင်ဖိုင်များကိုအလွယ်တကူဖြည်ချနိုင်သည်။
File_get_Contents () သည် Zip file ကို decompress မလုပ်နိုင်သော်လည်း Zip file ၏မူလ binary content ကိုဖတ်ရန်နှင့် decompression အတွက် Ziparchive class သို့သွားရန် File_get_Contents () ကို သုံးနိုင်သည်။ ဤနည်းအားဖြင့် File_get_Contents () ဖိုင်ကိုဖတ်ရှုခြင်းအတွက်လိုအပ်ချက်ဖြစ်လာသည် ။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$zipFile</span></span><span> = </span><span><span class="hljs-string">'example.zip'</span></span><span>; </span><span><span class="hljs-comment">// ZIP ဖိုင်လမ်းကြောင်း</span></span><span>
</span><span><span class="hljs-comment">// ဖတ် ZIP စာချုပ်စာတမ်း的原始内容</span></span><span>
</span><span><span class="hljs-variable">$zipData</span></span><span> = </span><span><span class="hljs-title function_ invoke__">file_get_contents</span></span><span>(</span><span><span class="hljs-variable">$zipFile</span></span><span>);
</span><span><span class="hljs-comment">// 将ဖတ်到的二进制数据传递给 ZipArchive ဒော့ှ့ခြင်း</span></span><span>
</span><span><span class="hljs-variable">$zip</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title class_">ZipArchive</span></span><span>;
</span><span><span class="hljs-variable">$tmpFile</span></span><span> = </span><span><span class="hljs-title function_ invoke__">tempnam</span></span><span>(</span><span><span class="hljs-title function_ invoke__">sys_get_temp_dir</span></span><span>(), </span><span><span class="hljs-string">'zip'</span></span><span>); </span><span><span class="hljs-comment">// 创建一个临时စာချုပ်စာတမ်း</span></span><span>
</span><span><span class="hljs-title function_ invoke__">file_put_contents</span></span><span>(</span><span><span class="hljs-variable">$tmpFile</span></span><span>, </span><span><span class="hljs-variable">$zipData</span></span><span>); </span><span><span class="hljs-comment">// 将ဖတ်的二进制数据写入临时စာချုပ်စာတမ်း</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">open</span></span><span>(</span><span><span class="hljs-variable">$tmpFile</span></span><span>) === </span><span><span class="hljs-literal">TRUE</span></span><span>) {
</span><span><span class="hljs-comment">// ရယူ ZIP ဖိုင်တွင်ပထမဆုံးဖိုင်အမည်</span></span><span>
</span><span><span class="hljs-variable">$fileName</span></span><span> = </span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">getNameIndex</span></span><span>(</span><span><span class="hljs-number">0</span></span><span>); </span><span><span class="hljs-comment">// ရယူ第一个စာချုပ်စာတမ်း的名称</span></span><span>
</span><span><span class="hljs-comment">// ဖိုင်၏ contents ကိုဖတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$fileContent</span></span><span> = </span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">getFromName</span></span><span>(</span><span><span class="hljs-variable">$fileName</span></span><span>);
</span><span><span class="hljs-comment">// output ဖိုင်အကြောင်းအရာ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$fileContent</span></span><span>;
</span><span><span class="hljs-comment">// ရုပ်သိမ်းခြင်း ZIP စာချုပ်စာတမ်း</span></span><span>
</span><span><span class="hljs-variable">$zip</span></span><span>-></span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-comment">// 删除临时စာချုပ်စာတမ်း</span></span><span>
</span><span><span class="hljs-title function_ invoke__">unlink</span></span><span>(</span><span><span class="hljs-variable">$tmpFile</span></span><span>);
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">'ဖွင့်လို့မရဘူး ZIP စာချုပ်စာတမ်း!'</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
ဤဥပမာတွင် File_Get_contents () မှတဆင့် Zip file ၏ binary data ကို ဦး စွာဖတ်ရှုပြီးဒေတာကိုယာယီဖိုင်သို့ရေးပါ။ ထို့နောက်ကျွန်ုပ်တို့သည်ဇယ်ရှိုင်းဖိုင်ကိုဖွင့ ်. ziparchive class ကို အသုံးပြု. ၎င်းထဲရှိအကြောင်းအရာများကိုဖတ်ရန်။ ဤနည်းအားဖြင့် File_get_Contents () သည်ကုန်ကြမ်းအချက်အလက်များကိုဖတ်ရှုရန်ကိရိယာတစ်ခုဖြစ်လာပြီး decompression စစ်ဆင်ရေးကိုပြီးစီးရန်အတွက် ဇိမ်ကောင်အထိ လွှဲပြောင်းပေးဆဲဖြစ်သည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
file_get_contents