CSV ဖိုင်များရှိသတ်သတ်မှတ်မှတ်နေရာများရှိဒေတာများကိုဖတ်ရန် FENCTSV နှင့် FSEEK လုပ်ဆောင်ချက်များသည်မည်သို့အတူတကွလုပ်ဆောင်ကြသနည်း။ ]
PHP တွင် CSV ဖိုင်များကိုပြုပြင်သည့်အခါကျွန်ုပ်တို့သည် fcovercsv () function ကို အသုံးပြု. ဖိုင်ရှိအချက်အလက်တိုင်းကိုဖတ်ရန်။ သို့သော်တစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည်ပထမ ဦး ဆုံးလိုင်းအနည်းငယ်ကိုကျော်လွှားနိုင်သော်လည်း အချို့သော နေရာမှဒေတာများကိုစတင်ဖတ်ရှုလိုသည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုအတူတကွအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဖတ်ရှုသည့်အချက်အလက်များ၏စတင်အနေအထားကိုအတိအကျထိန်းချုပ်နိုင်ပြီးကြီးမားသောဖိုင်များသို့မဟုတ်တိကျသောဒေတာများကိုပိုမိုထိရောက်စွာလုပ်ဆောင်နိုင်သည်။
FgetCSV () သည် PHP တွင် built-in function များထဲမှတစ်ခုဖြစ်သည်။ များသောအားဖြင့် CSV format ဖြင့်ဖတ်ရန်အသုံးပြုလေ့ရှိသည်။ ၎င်းသည်ဖိုင်ညွှန်ကြားချက်၏လက်ရှိအနေအထားမှအချက်အလက်များ၏လိုင်းကိုဖတ်ပြီး၎င်းကိုခင်းကျင်းရန်ခင်းကျင်းစေသည်။ Array Elevent တစ်ခုစီသည် CSV ဖိုင်ရှိကော်လံတစ်ခုနှင့်ကိုက်ညီသည်။ FgetCSV () ၏အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-variable">$handle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-string">"file.csv"</span></span><span>, </span><span><span class="hljs-string">"r"</span></span><span>);
</span><span><span class="hljs-keyword">while</span></span><span> ((</span><span><span class="hljs-variable">$data</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fgetcsv</span></span><span>(</span><span><span class="hljs-variable">$handle</span></span><span>, </span><span><span class="hljs-number">1000</span></span><span>, </span><span><span class="hljs-string">","</span></span><span>)) !== </span><span><span class="hljs-literal">FALSE</span></span><span>) {
</span><span><span class="hljs-comment">// ဒေတာတစ်ခုချင်းစီကိုအတန်းတိုင်းလုပ်ငန်းစဉ်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$data</span></span><span>);
}
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$handle</span></span><span>);
</span></span>FgetCSV () သည် parameters သုံးခုကိုလက်ခံနိုင်သည်။
လက်ကိုင် : ပွင့်လင်းသောဖိုင်အရင်းအမြစ်။
အရှည် : ဖတ်ရန် Bytes အများဆုံးအရေအတွက်။
delimiter : delimiter, comma မှ defaults ။
FCREK () function ကိုဖိုင်ညွှန်ပြသည့်အနေအထားကိုထိန်းညှိရန်အသုံးပြုသည်။ fseek () ၏အခြေခံအသုံးပြုမှုသည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-title function_ invoke__">fseek</span></span><span>(</span><span><span class="hljs-variable">$handle</span></span><span>, </span><span><span class="hljs-variable">$offset</span></span><span>, SEEK_SET);
</span></span>$ လက်ကိုင် - ဖိုင်လက်ကိုင်။
$ offset : ရွှေ့ပြောင်းရန် bytes အရေအတွက်ကိုညွှန်ပြ, offset ။
Seek_set : offset ကိုဖိုင်၏အစမှတွက်ချက်သည်ကိုဖော်ပြသည်။ အခြားအသုံးများသောကိန်းရှင်များမှာ Seek_cur (လက်ရှိအနေအထားနှင့်နှိုင်းယှဉ်ပါ) နှင့် Seek_end (ဖိုင်၏အဆုံးအထိ) နှင့် Seek_cur နှင့် Seek_cur တို့ ပါဝင်သည်။
FCEEK () နှင့် fgetcsv () ကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် CSV ဖိုင်ရှိသီးခြားနေရာမှဒေတာများကိုစတင်ဖတ်ရှုနိုင်သည်။ ကျွန်ုပ်တို့သည် CSV ဖိုင်တွင်ပထမ 10 လိုင်းကိုကျော်သွားလိုပြီးလိုင်း 11 မှအချက်အလက်များကိုစတင်ဖတ်ရှုလိုသည်ဆိုပါစို့။ ဤတွင်တိကျသောအကောင်အထည်ဖော်မှုဖြစ်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">'file.csv'</span></span><span>;
</span><span><span class="hljs-variable">$handle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fopen</span></span><span>(</span><span><span class="hljs-variable">$filename</span></span><span>, </span><span><span class="hljs-string">'r'</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$handle</span></span><span> !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-comment">// အသုံးပြုfseekကျော် skip10အိုကေ</span></span><span>
</span><span><span class="hljs-variable">$linesToSkip</span></span><span> = </span><span><span class="hljs-number">10</span></span><span>;
</span><span><span class="hljs-keyword">for</span></span><span> (</span><span><span class="hljs-variable">$i</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>; </span><span><span class="hljs-variable">$i</span></span><span> < </span><span><span class="hljs-variable">$linesToSkip</span></span><span>; </span><span><span class="hljs-variable">$i</span></span><span>++) {
</span><span><span class="hljs-title function_ invoke__">fgets</span></span><span>(</span><span><span class="hljs-variable">$handle</span></span><span>); </span><span><span class="hljs-comment">// 逐အိုကေ读取并跳过</span></span><span>
}
</span><span><span class="hljs-comment">// မှ11အိုကေ开始读取数据</span></span><span>
</span><span><span class="hljs-keyword">while</span></span><span> ((</span><span><span class="hljs-variable">$data</span></span><span> = </span><span><span class="hljs-title function_ invoke__">fgetcsv</span></span><span>(</span><span><span class="hljs-variable">$handle</span></span><span>, </span><span><span class="hljs-number">1000</span></span><span>, </span><span><span class="hljs-string">","</span></span><span>)) !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-comment">// ဒေတာတစ်ခုချင်းစီကိုအတန်းတိုင်းလုပ်ငန်းစဉ်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$data</span></span><span>);
}
</span><span><span class="hljs-title function_ invoke__">fclose</span></span><span>(</span><span><span class="hljs-variable">$handle</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">"ဖိုင်ကိုဖွင့ ်. မရပါ!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ဒီဥပမာမှာ FSECTCSV (ဒါမှမဟုတ် fgets () ) ကိုပထမ ဦး ဆုံးသုံးပြီး fcovercsv () ဖိုင်ကိုဖိုင်ညွှန်ပြတဲ့နေရာကနေဖတ်ရန်နှင့်လုပ်ဆောင်ရန် FGONCSV () ကို သုံးပါ။
ကြီးမားသောဖိုင်များကိုကိုင်တွယ်ခြင်း - ကြီးမားသော CSV ဖိုင်များအတွက် FSEK ကို အသုံးပြု. FESEK () သည် မလိုအပ်သောအစိတ်အပိုင်းများကိုကျော်ပြီးလိုအပ်သောအချက်အလက်များကိုသာဖတ်ရန်ကူညီနိုင်သည်။ ဥပမာ, ခေါင်းစဉ်လိုင်း, အလွတ်လိုင်းသို့မဟုတ်ဖိုင်တွင်လုပ်ဆောင်သောအချက်အလက်အချို့ကိုကျော်သွားပါ။
CSV အချက်အလက်များကိုကျပန်းလက်လှမ်းမီမှု - တခါတရံတွင်ကျွန်ုပ်တို့သည်ဒေတာများကို CSV ဖိုင်ရှိသီးခြားနေရာတစ်ခုမှဒေတာများကိုစတင်ဖတ်ရှုရန်သို့မဟုတ်သတ်မှတ်ထားသောအတန်းအချို့ကိုဖတ်ရန်လိုအပ်သည်။ ဤလိုအပ်ချက်ကို ကျိုးကြောင်းဆီလျော်သော () offset ကိုကျိုးကြောင်းဆီလျော်စွာသတ်မှတ်ခြင်းဖြင့်အလွယ်တကူရရှိနိုင်သည်။
စွမ်းဆောင်ရည်တိုးတက်စေရန်အတွက် - ဖိုင်တစ်ခုလုံးကိုခြစ်ရာမှဖတ်ရန်မလိုအပ်ပါ ။
File Pointer Producter : FCREEK () ကိုခေါ်သည့်အခါဖိုင်ညွှန်ပြသည့်နေရာသည်ပြောင်းလဲသွားလိမ့်မည်။ ဒါကြောင့် FSEEK ကိုသုံးတဲ့အခါ () ကို အသုံးပြုတဲ့အခါမှာသင်စာဖတ်ချင်တဲ့နေရာမှန်ကိုသေချာအောင်လုပ်ပါ။
FSEEK ၏ offset : FESEK () ၏ offset သည် bytes တွင်ရှိသည်။ ထို့ကြောင့် CSV ဖိုင်များသည်ဖိုင်များ၏အရှည်သည်ကိုက်ညီမှုမရှိပါကအမှားတစ်ခုဖြစ်ပေါ်စေနိုင်သည်။ ဤအရာကိုရှောင်ရှားရန်ကျွန်ုပ်တို့သည် fgets () ကို skip လုပ်ရန် () ကိုကျော်သွားစေရန်သို့မဟုတ်ဖိုင်အတွင်းရှိလိုင်းတစ်ခုစီသည်အတော်လေးတူညီသည်သေချာအောင်လုပ်လေ့ရှိသည်။
ဖိုင်ဖွင့်ခြင်း Mode : ဖိုင်ကို Read Mode ( R ) တွင်ဖွင့်ရန်သေချာပါစေ ။
FgetCsv () နှင့် fseek) ကိုပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် CSV ဖိုင်များတွင်အသေးစိတ်အချက်အလက်များကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိနိုင်သည်။ FECEEK () FCLCESV () သည် CSV ဖိုင်တစ်ခုစီကို array တစ်ခုစီခွဲထားရန် FCLICSV () သည် CSV ဖိုင်တစ်ခုစီကိုခွဲခြမ်းစိတ်ဖြာခြင်းကိုအတိအကျထိန်းချုပ်နိုင်စွမ်းကိုထိန်းချုပ်နိုင်စွမ်းကိုပေးသည်။ နှစ် ဦး ၏ပေါင်းစပ်မှုသည်ကြီးမားသောဖိုင်များပြုပြင်ခြင်းသို့မဟုတ်ကျပန်းလက်လှမ်းမီမှုပြုလုပ်ရာတွင်ကျွန်ုပ်တို့၏စွမ်းဆောင်ရည်ကိုထိထိရောက်ရောက်တိုးတက်စေနိုင်သည်။