ဤဆောင်းပါးတွင် PHP ၏ Date_Sunset Setting Function ကိုနေ့စဉ်နေ့တိုင်းတွက်ချက်ရန်နှင့်နောက်ဆုံးတွင်အမြင်အာရုံပြသမှုအတွက်ဂရပ်ဖစ်ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာပါမည်။ လုပ်ငန်းစဉ်တစ်ခုလုံးတွင်အပိုင်းနှစ်ပိုင်းပါဝင်သည်။ ဒေတာစုဆောင်းခြင်းနှင့်ဇယားဆွဲခြင်းတို့ပါဝင်သည်။
PHP's Built-in Date_Sunsunet function ကိုသတ်မှတ်ထားသောနေ့, ပထဝီအနေအထား (လတ်တီတုနှင့်) နှင့်အမြင့်ပေါ် မူတည်. နေဝင်ချိန်အချိန်ကိုပြန်ပို့နိုင်သည်။ လုပ်ဆောင်ချက်၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
date_sunset(
int $timestamp,
int $returnFormat = SUNFUNCS_RET_STRING,
?float $latitude = null,
?float $longitude = null,
?float $zenith = null,
?float $utcOffset = null
): string|int|float|false
အသုံးများသော parametersters ဖော်ပြချက်:
$ Timestamp : ရက်စွဲအတွက် Unix Timestamp ။
$ returnformat : strings, timestamp စသဖြင့်ပြန်ရောက်သည့်ပုံစံ
$ လတ်တီတွဒ် နှင့် $ လောင်ဂျီတွဒ် - ပထဝီဆိုင်ရာသွဒီနိတ်။
$ UTCOFFSY : Time Zone Offset (ဥပမာ, တရုတ်သည် 8.0 ဖြစ်သည်) ။
အောက်ဖော်ပြပါ PHP ကုဒ်သည်တစ်နှစ်လုံးနေ့စဉ်ယူနစ်များ၌တစ်နှစ်လုံးဖြတ်သန်းသွားမည်
<?php
$latitude = 39.9042; // နမူနာ:ပေကျင်းရဲ့လတ်တီတွဒ်
$longitude = 116.4074; // နမူနာ:ပေကျင်း၌လောင်ဂျီတွဒ်
$timezoneOffset = 8.0; // ပေကျင်းအချိန်
$start = strtotime('2025-01-01');
$end = strtotime('2025-12-31');
$sunsetTimes = [];
for ($day = $start; $day <= $end; $day = strtotime('+1 day', $day)) {
$sunset = date_sunset($day, SUNFUNCS_RET_STRING, $latitude, $longitude, 90.833333, $timezoneOffset);
$formattedDate = date('Y-m-d', $day);
$sunsetTimes[] = [
'date' => $formattedDate,
'sunset' => $sunset
];
}
// သိမ်းဆည်းပါJSONစာချုပ်စာတမ်း,ရှေ့ front-end ပုံဆွဲ
file_put_contents('sunset_data.json', json_encode($sunsetTimes, JSON_PRETTY_PRINT));
?>
ဒီကုဒ်ကိုကွပ်မျက်ခံရပြီးတဲ့နောက်တစ်နေ့တာနေဝင်ချိန်အချိန်ဖြစ်တဲ့ Sunset_Data.json ဖိုင်ကိုထုတ်လုပ်လိမ့်မယ်။
ဇယားဆွဲရန်ဇယားကွက်များအဖြစ်ရိုးရှင်းသောရှေ့တန်းစာကြည့်တိုက်များကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။ ဤတွင်နမူနာ HTML ဖိုင်ကိုဤတွင်ဖော်ပြထားသည်။
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>2025တစ်နှစ်နေဝင်ချိန်အချိန်ဇယား</title>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
</head>
<body>
<canvas id="sunsetChart" width="1000" height="500"></canvas>
<script>
fetch('https://m66.net/sunset_data.json')
.then(response => response.json())
.then(data => {
const labels = data.map(item => item.date);
const sunsetTimes = data.map(item => {
const parts = item.sunset.split(':');
return parseInt(parts[0]) + parseInt(parts[1]) / 60;
});
const ctx = document.getElementById('sunsetChart').getContext('2d');
new Chart(ctx, {
type: 'line',
data: {
labels: labels,
datasets: [{
label: 'နေဝင်ချိန်(နာရီ)',
data: sunsetTimes,
borderColor: 'orange',
backgroundColor: 'rgba(255,165,0,0.3)',
fill: true,
tension: 0.3
}]
},
options: {
scales: {
y: {
title: {
display: true,
text: 'အချိန်(နာရီ)'
}
},
x: {
title: {
display: true,
text: 'နေ့စဲှ'
},
ticks: {
maxTicksLimit: 12
}
}
}
}
});
});
</script>
</body>
</html>
သင်တောင်းဆိုသည့်အတိုင်းအထက်ဖော်ပြပါ အချက်အလက် များ၏ဒေတာ URL ကို https://m66.net/sunset/dsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsunsuntata.json ဖြင့်အစားထိုးထားသည်ကိုသတိပြုပါ။
အထက်ပါနည်းလမ်းများမှတစ်ဆင့် PHP ကိုတစ်နှစ်လုံးစုဆောင်းရန် Sunset Data ကိုတစ်နှစ်လုံးစုဆောင်းရန်နှင့်ရှေ့အဆင့်နည်းပညာမှတစ်ဆင့်ပြောင်းလဲခြင်းဇယားဆွဲခဲ့သည်။ ၎င်းသည်ရာသီဥတုအခြေအနေ, နက်ခတ်တဗဒေလေ့လာရေးသတိပေးချက်များနှင့်အခြားလုပ်ဆောင်ချက်များအတွက်အလွန်သင့်လျော်သောယခုနှစ်အတွင်းပြောင်းလဲနေသောနေဝင်ချိန်အချိန်၏ပြောင်းလဲနေသောခေတ်ရေစီးကြောင်းကိုအလိုအလျောက်မြင်နိုင်ရန်ခွင့်ပြုသည်။
အကယ်. သင်သည်ဤစနစ်ကိုပိုမိုစုံလင်စေလိုပါကအသုံးပြုသူအတွေ့အကြုံကိုပိုမိုတိုးတက်စေရန်မတူညီသောမြို့ကြီးများအကြားကွဲပြားသောမြို့ကြီးများအကြား switching ကို switching လုပ်ရန်နှင့်မတူညီသောမြို့ကြီးများအကြား switching ကို Support လုပ်နိုင်သည်။