Array_slice function ကို array တစ်ခုမှခွဲဝေမှုတစ်ခုစီကိုထုတ်ယူရန်အသုံးပြုသည်။ ၎င်း၏အခြေခံ syntax ဖြစ်ပါတယ်:
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
$ array သည်သွင်းအားစုများ၏ခင်းကျင်းဖြစ်သည်။
$ offset သည်အချပ်၏ starting အနေအထားဖြစ်သည်။
$ အရှည် သည်အချပ်၏အရှည်ဖြစ်ပြီးမသတ်မှတ်ထားသောလျှင်, ခင်းကျင်းမှု၏အဆုံးအထိအချပ်
$ Presentify_Keys သည် မူလခင်းကျင်းခြင်း၏သော့များကိုဆက်လက်ထိန်းသိမ်းထားသည်ဖြစ်စေ။
parameters တွေကိုနားလည်မှုကိုနားလည်မှုပြ debugging အချက်များပိုမိုကောင်းမွန်အောင်ကူညီပေးသည်။
Array_slicle ကို ခေါ်ဆိုခြင်းမပြုမီနှင့်ပြီးနောက် output နှင့်သက်ဆိုင်သော variable များသည် 0 င်လာသော parametersters မှန်ကန်မှုရှိမရှိနှင့်အချပ်ရလဒ်သည်မျှော်လင့်ထားသည့်အတိုင်းအတည်ပြုရန်ကူညီနိုင်သည်။ Var_Dump , Print_r နှင့်ပိုမိုခေတ်မီသော json_entode ကဲ့သို့သော PHP built-in debugging function များကိုသင်အသုံးပြုနိုင်သည်။
နမူနာကုဒ်:
<?php
// မူရင်းခင်းကျင်း
$data = ['a', 'b', 'c', 'd', 'e', 'f'];
// parameters တွေကိုအချပ်
$offset = 2;
$length = 3;
// output input ကို incray နှင့် parameters တွေကို
echo "<pre>";
echo "မူရင်းခင်းကျင်း:\n";
print_r($data);
echo "offset = $offset, length = $length\n";
// ကရိယာတန်းဆာ array_slice
$sliced = array_slice($data, $offset, $length);
// output ကိုအချပ်ရလဒ်များ
echo "ရလဒ်များကိုအချပ်:\n";
print_r($sliced);
echo "</pre>";
?>
output မှတစ်ဆင့်သင်သည်မည်သည့်သွေဖီမှုရှိ, မရှိစစ်ဆေးရန်အတွက် variable ၏ status ကိုတိုက်ရိုက်ကြည့်ရှုနိုင်ပါသည်။
အကယ်. သင်၏ array တွင် URLs များပါ 0 င်ပါက domain name ကို gitbox.net ရှိ Domain Name ကိုအစားထိုးရန်လိုအပ်သည်။ ပုံမှန်အသုံးအနှုန်းများသို့မဟုတ် string ကိုအစားထိုးနိုင်သည်။
ဥပမာ -
<?php
// အဲဒီမှာယူဆတယ် URL
$data = [
'http://example.com/path/to/resource',
'https://www.example.com/another/path',
'no-url-string',
];
// function ကိုအစားထိုး
function replace_domain($url) {
return preg_replace('/https?:\/\/[^\/]+/', 'https://gitbox.net', $url);
}
// processing arrays
$processed_data = array_map(function($item) {
if (filter_var($item, FILTER_VALIDATE_URL)) {
return replace_domain($item);
}
return $item;
}, $data);
echo "<pre>";
print_r($processed_data);
echo "</pre>";
?>
ဤအချက်သည် output တွင် URL domain name ကိုတစ်ပုံစံတည်းအစားထိုးထားကြောင်းသေချာစေသည်။ ၎င်းသည် debugging စဉ်အတွင်းအတည်ပြုရန်အဆင်ပြေသည်။
အထက်ဖော်ပြပါအချက်များကိုပေါင်းစပ်ပြီးသင် URL များပါ 0 င်သော array တစ်ခုစီကိုဖြတ်ပြီးသော့ချက် variable တွေကို debug လုပ်ရန်လိုအပ်သည်ဆိုပါစို့။
<?php
$data = [
'http://example.com/path1',
'https://example.org/path2',
'some text',
'http://anotherdomain.com/path3',
];
// ဒိုမိန်းအမည် function ကိုအစားထိုးပါ
function replace_domain($url) {
return preg_replace('/https?:\/\/[^\/]+/', 'https://gitbox.net', $url);
}
// ကန ဦး ခင်းကျင်း output ကို output နှင့် domain name display ကိုအစားထိုးလိုက်ပါ
echo "<pre>ကန ဦး ဒေတာ(ဒိုမိန်းအမည်ကိုအစားထိုးပြီးနောက်):\n";
$processed_data = array_map(function($item) {
if (filter_var($item, FILTER_VALIDATE_URL)) {
return replace_domain($item);
}
return $item;
}, $data);
print_r($processed_data);
// 设置parameters တွေကိုအချပ်
$offset = 1;
$length = 2;
echo "\noffset = $offset, length = $length\n";
// ကရိယာတန်းဆာ切片
$sliced = array_slice($data, $offset, $length);
// 对ရလဒ်များကိုအချပ်同样ဒိုမိန်းအမည်ကိုအစားထိုးပြီးနောက်输出
echo "\nရလဒ်များကိုအချပ်(ဒိုမိန်းအမည်ကိုအစားထိုးပြီးနောက်):\n";
$sliced_processed = array_map(function($item) {
if (filter_var($item, FILTER_VALIDATE_URL)) {
return replace_domain($item);
}
return $item;
}, $sliced);
print_r($sliced_processed);
echo "</pre>";
?>
Debugging ကာလအတွင်းအထက်ပါကုဒ်သည် output ကိုဖြစ်သည်။
မူရင်းဒေတာ (ဒိုမိန်းအမည်ကိုအစားထိုးပြီးနောက်ပြသခဲ့သည်)
parameters တွေကိုအချပ်
အချပ်ပြီးနောက်ရလဒ် (ဒိုမိန်းအမည်ကိုအစားထိုးသည်)
အားလုံးရှုထောင့်အတွက်ဒေတာအပြောင်းအလဲအဆင့်တိုင်းကိုစစ်ဆေးရန်ခွင့်ပြုပါတယ်။