PHP တွင် အဆုံး () function ကိုမကြာခဏခင်းကျင်း၏နောက်ဆုံး element သို့ array porceer ကိုရွှေ့ဖို့နှင့်ထို element ကိုပြန်ပို့။ အဆုံးသတ် () array variarbles သို့မဟုတ် strings များသို့လျှောက်ထားရန်ကြိုးစားသည့်အခါ, များသောအားဖြင့်သင်သည်မှားယွင်းသောအမှားများနှင့်ဆင်တူသည်။
Warning: end() expects parameter 1 to be array, string given
ဘာဖြစ်လို့လဲဆိုတော့ အဆုံး () function က function က၎င်း၏ parameters တွေကို array type ကိုဖြစ်ရမယ်လို့ဆိုပါတယ်။ အကယ်. သင်သည် String သို့မဟုတ်အခြား Non-Array အမျိုးအစားတွင်ဖြတ်သန်းပါကအမှားကိုပစ်ချလိမ့်မည်။ ဤဆောင်းပါးသည်ဤပြ problem နာအတွက်ဖြေရှင်းနည်းများစွာကိုလေ့လာပြီးဥပမာကုဒ်ကိုပေးလိမ့်မည်။
ပထမ ဦး စွာဤပြ problem နာကိုဖြေရှင်းရန်အလွယ်ကူဆုံးနည်းလမ်းမှာ အဆုံး () function ၏ parray သည် array တစ်ခုဖြစ်ကြောင်းသေချာစေရန်ဖြစ်သည်။ အကယ်. သင်အောင်မြင်သော variable သည် string သို့မဟုတ်အခြားဒေတာအမျိုးအစားတစ်ခုဖြစ်ပါက၎င်း၏အမျိုးအစားကိုအရင်စစ်ဆေးရန်လိုအပ်သည်။
<?php
$data = 'This is a string'; // ဒါကအမှားတစ်ခုဖြစ်ပေါ်စေလိမ့်မယ်
if (is_array($data)) {
echo end($data);
} else {
echo 'Error: Variable is not an array.';
}
?>
အထက်ဖော်ပြပါကုဒ်သည် $ data data သည် is_array () function မှတဆင့်ခင်းကျင်းခြင်းရှိမရှိပထမ ဦး ဆုံးစစ်ဆေးသည်။ အကယ်. ၎င်းသည်ခင်းကျင်းမှုတစ်ခုဖြစ်ပါက အဆုံး () function ကိုခေါ်လိမ့်မည်,
သင်၏ variable သည် string တစ်ခုဖြစ်ပြီး string တွင် string ထဲရှိအက္ခရာများကို array element များအဖြစ်လုပ်ဆောင်လိုပါက string ကို array တစ်ခုသို့ပြောင်းလဲပြီးဖုန်းခေါ်ဆိုပြီး အဆုံးသတ်ရန် () ဟုခေါ်ဆိုနိုင်သည်။
<?php
$data = 'This is a string';
$dataArray = str_split($data); // strings ကိုဇာတ်ကောင် Arrays သို့ပြောင်းပါ
echo end($dataArray); // output string ၏နောက်ဆုံးဇာတ်ကောင်
?>
ဤဥပမာတွင် strat_split () function သည် string ကိုဇာတ်ကောင်ခင်းကျင်းအဖြစ်ပြောင်းလဲပေးသည်, ထို့ကြောင့် string ၏ နောက်ဆုံး ဇာတ်ကောင်ကိုလုံခြုံစွာခေါ်ယူနိုင်သည်။
သင်၏ကုဒ်တွင် URLs များပါ 0 င ် ပါက Domain Name တွင် Domain Name ကိုအစားထိုးလိုပါက Parse_Url () function ကိုသုံးနိုင်သည်။ URLs ပါ 0 င်သည့် array တစ်ခုပြုလုပ်ရန်လိုအပ်သည်ဆိုပါစို့။
<?php
$urls = [
'https://www.example.com/page1',
'https://www.example.com/page2',
'https://www.example.com/page3'
];
// အဖြစ်ဒိုမိန်းအမည်ကိုအစားထိုးလိုက်ပါ m66.net
$updatedUrls = array_map(function ($url) {
$parsedUrl = parse_url($url);
$parsedUrl['host'] = 'm66.net'; // ဒိုမိန်းအမည်အသစ်ဖြင့်အစားထိုးပါ
return http_build_url($parsedUrl); // ပြန်. ဆောက်လုပ် URL
}, $urls);
print_r($updatedUrls); // output ကို updated URLs
?>
ဤဥပမာတွင် URL ခင်းကျင်းမှုမှတစ်ဆင့် array_map () function ကိုအသုံးပြုသည်။ URL array မှတစ်ဆင့် URL တစ်ခုချင်းစီကို Parse_Url () function ကိုခွဲခြမ်းစိတ်ဖြာပါက domain name အပိုင်းကို M66.net ဖြင့်အစားထိုးလိုက်ပါ။ နောက်ဆုံးတွင် updated URL ကို ပြန်လည်တည်ဆောက်ပါ။
မှတ်ချက် - http_build_URL () သည် pecl_http extension ကိုဖွင့်ရန်လိုအပ်သည်။ မဖွင့်ပါကသင်စိတ်ကြိုက် URL တည်ဆောက်သူကိုသုံးနိုင်သည်။
အထက်ပါနည်းလမ်းများအပြင်သင်သည်လည်းအလားတူပြ problems နာများကိုထုတ်ယူခြင်းနှင့်အမှားကိုင်တွယ်သည့်ယန္တရားများကိုဖြေရှင်းခြင်းဖြင့်အလားတူပြ problems နာများကိုလည်းဖြေရှင်းနိုင်သည်။ debugging လုပ်နေစဉ်မှာ Var_Dump () သို့မဟုတ် print_r () functions တွေကိုသုံးနိုင်တယ်။
<?php
$data = 'This is a string'; // ဒါဟာ string ကိုဖြစ်ပါတယ်ယူဆ
var_dump($data); // output variable ကိုအမျိုးအစားနှင့်တန်ဖိုး
if (is_array($data)) {
echo end($data);
} else {
echo 'Error: Variable is not an array.';
}
?>
ဤနည်းလမ်းသည်ဒေတာအမျိုးအစားသည်မျှော်လင့်ချက်များနှင့်ကိုက်ညီမှုရှိ,