C / C ++ ပရိုဂရမ်များကို PHP သို့ကူးယူသည့်အခါဒေတာပုံစံပြောင်းလဲခြင်းပြ problems နာများကိုသင်မကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ အထူးသဖြင့် hex strings များကိုကိန်းဂဏန်းများသို့ကူးပြောင်းသည့်အမှု၌ strtol ကို C / C ++ တွင်ဤအရာကို အသုံးပြု. PHP တွင်ရှိနေစဉ်အလားတူသက်ရောက်မှုများရရှိရန် HexDec function ကိုအသုံးပြုရန်အကြံပြုသည်။
ဤဆောင်းပါးသည်နှစ် ဦး ၏ကွဲပြားခြားနားမှုနှင့်အသုံးပြုမှုများကိုမိတ်ဆက်ပေးပြီး hexdec နှင့် stret ကို မည်သို့အစားထိုးရမည်ကိုဥပမာပြပါလိမ့်မည်။
C / C ++ တွင် strtol သည် integer function ကိုအားကြီးသော string တစ်ခုဖြစ်သည်။ ၎င်း၏ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -
long int strtol(const char *nptr, char **endptr, int base);
NPTR : ပြောင်းလဲခံရဖို့ string ကိုညွှန်ပြ။
Endptr : ပြောင်းလဲခြင်းကိုရပ်တန့်စေသည့် string ၏အစိတ်အပိုင်းကိုအချက်များ (null ဖြစ်နိုင်သည်) ။
Base : binary (များသောအားဖြင့် 10 သို့မဟုတ် 16) ကိုပြောင်းသည်။
ဥပမာအားဖြင့်:
char *hex = "0x1A3F";
long result = strtol(hex, NULL, 16);
// result = 6719
HEX ကြိုးများကိုဒ decimal မကိန်းများသို့ပြောင်းလဲရန် PHP သည် built-in function lexdec ကိုထောက်ပံ့ပေးသည်။ Syntax သည်အလွန်ရိုးရှင်းပါသည်။
int hexdec(string $hex_string);
အသုံးပြုမှုဥပမာ -
$hex = "1A3F";
$result = hexdec($hex);
// $result = 6719
သတိပြုရန်မှာ $ hex သည် ဤနေရာတွင် 0x ရှေ့ဆက်တွင် 0x ရှေ့ဆက်မပါသင့်ကြောင်းသတိပြုပါ။
PHP တွင် C / C ++ တွင် strtol ကို C / C ++ ကို အစားထိုးသောအခါ, သင်သည်အောက်ပါအချက်များကိုအာရုံစိုက်ရန်လိုအပ်သည်။
prefix ကိုဖယ်ရှားပါ Php ၏ Hexdec သည် 0x သို့မဟုတ် 0x ရှေ့ဆက်များကိုလက်မခံပါ။
Input Verification : C ရှိ Strtol သည် string တွင်အမှားအယွင်းများကိုခွဲခြား သတ်မှတ် နိုင်သည်။
Case catatibility - PHP ရဲ့ Hexdec ဟာ အကြီးအသေးနဲ့အသေးစာလုံးတွေကိုပြောင်းလဲခြင်းမရှိဘဲအလိုအလျောက်ထောက်ပံ့ပေးတယ်။
url parameter ကိုကိန်းဂဏန်းတစ်ခုသို့ hexadecimal ကိုယ်စားပြုမှုပါ 0 င်သည့် URL parameter ကိုမည်သို့ပြောင်းလဲရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
<?php
// ယူဆချက် URL အတွက် https://gitbox.net/convert.php?hex=1A3F
$hex = $_GET['hex'] ?? '';
if (preg_match('/^[0-9a-fA-F]+$/', $hex)) {
$decimal = hexdec($hex);
echo "hexadecimal {$hex} 对应的十进制值အတွက် {$decimal}";
} else {
echo "无效的hexadecimal输入。";
}
?>
ဤဥပမာတွင် input ကိုပုံမှန်စကားရပ်မှတစ်ဆင့်တရားဝင် hexadecimal နံပါတ်တစ်ခုကို ဦး စွာသေချာစွာသေချာစွာသေချာစွာစစ်ဆေးပြီး HexDec ကို လုံခြုံစွာခေါ်ပါ။ C / C ++ တွင် strtol (hex, null, 16) ကို အသုံးပြုခြင်း၏စိတ်ကူးနှင့်ကိုက်ညီသော်လည်း၎င်းသည် ပို. တိကျသည်။
Multi-parameter သည် Multi-parameter သည် PHP ရှိ strtol ကဲ့သို့ပြောင်းလွယ်ပြင်လွယ်ရှိသော်လည်း HexDec သည် လူဝင်မှုကြီးကြပ်ရေးအခြေအနေများအတွက်လုံလောက်သည်။ input format နှင့်ရှေ့ဆက်ထုတ်လုပ်မှုကိုသင်အာရုံစိုက်နေသရွေ့ HexDec သည် C / C ++ တွင် strtol ၏အခန်းကဏ် usule ကိုကောင်းကောင်းယူနိုင်သည်။ ပိုမိုရှုပ်ထွေးသောပြုပြင်ထုတ်လုပ်မှုလိုအပ်သည့်အခြေအနေများလိုအပ်သည့်ဖြစ်ရပ်များအတွက်ပုံမှန်စစ်ဆေးခြင်းသို့မဟုတ်လက်စွဲစနစ်ပြုပြင်ခြင်းများကိုပေါင်းစပ်ခြင်းသည်လုံးဝဖြစ်နိုင်သောနည်းဗျူဟာတစ်ခုဖြစ်သည်။