လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> DAIRE_SUNSETSESSESSESSESSUTE () ကိုအနားယူရန်

DAIRE_SUNSETSESSESSESSESSUTE () ကိုအနားယူရန်

M66 2025-05-30

ဤဆောင်းပါးတွင် PHP ၏ Date_Sunsetsunet () function ကို Rest API သို့မည်သို့ adaps လုပ်ရမည်ကိုလေ့လာမည်။ ဤနည်းအားဖြင့်အခြား applications များသို့မဟုတ်စနစ်များသည် PHP scripts များကိုတိုက်ရိုက်မလုပ်ဆောင်ဘဲ HTTP တောင်းဆိုမှုများမှတဆင့် HTTP တောင်းဆိုမှုများမှတစ်ဆင့်နေဝင်ချိန်ကိုရနိုင်သည်။

1 ။ DAIRE_SUNSESSESSet () function ကဘာလဲ။

PHP ၏ Date_SunsetSet () function ကိုသတ်မှတ်ထားသောနေရာ၏နေဝင်ချိန်အချိန်ကိုတွက်ချက်ရန်အသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်သည်တစ်နေ့တာ၏နေဝင်ချိန်အချိန်ကိုညွှန်ပြသည့် Unix Timestamp ကိုပြန်လည်ရောက်ရှိစေသည်။ အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 $timestamp = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
echo "Sunset time: " . date("Y-m-d H:i:s", $timestamp);

အထက်ပါဥပမာတွင် ဒေါ်လာလတ်တီတွဒ် နှင့် ဒေါ်လာလောင်ဂျီတွဒ်သည် လတ်တီတွဒ်နှင့် လောင် ဂျီတွဒ်ကိုကိုယ်စားပြုသည်။

2 ။ အဘယ်ကြောင့် DAID_SUNSETSESSESSESSESSESSESSESSESSATE () ari သို့အဘယ်ကြောင့် leadtatfulate?

Date_sunset () သည် Rest API သို့ encapsulated သည်နှင့်တပြိုင်နက်အခြား application များသို့သင် feature ကိုထောက်ပံ့ပေးနိုင်သည်။ ဤချဉ်းကပ်နည်းသည်သင်နေဝင်ချိန်အချိန်ဒေတာများကို PHP ပတ် 0 န်းကျင်မရှိဘဲနေရောင်ခြည်ဆိုင်ရာအချက်အလက်များကိုရယူလိုသောသို့မဟုတ်လုပ်ဆောင်နိုင်စွမ်းကိုအခြား 0 န်ဆောင်မှုများအဖြစ်ပေါင်းစပ်။ မရပါ။

3 ။ PHP နှင့် Slim Framework ကို အသုံးပြု. အနားယူ API ကို Encapsatch

ကျွန်ုပ်တို့သည်အထူးသဖြင့်ပြန်လည်တည်ဆောက်ရန်အထူးသဖြင့်သင့်တော်သောပါးလွှာသော PHP Framework ကိုအသုံးပြုမည်။ ဦး စွာ, သင်၏ဖွံ့ဖြိုးတိုးတက်မှုပတ် 0 န်းကျင်တွင်တေးရေးမှီခိုမှုစီမံခန့်ခွဲမှုကိရိယာကိုတပ်ဆင်ထားပြီးပါးလွှာသောမူဘောင်ကိုတပ်ဆင်ထားကြောင်းသေချာပါစေ။

Slim Framework ကို install လုပ်ပါ

Slim Framework ကိုတေးရေးဆရာမှတဆင့် Install လုပ်ပါ။

 composer require slim/slim:"4.*"
composer require slim/psr7

အနားယူ api ကိုဖန်တီးပါ

ထို့နောက်ကျွန်ုပ်တို့သည် API တစ်ခုထဲသို့ ရက်စွဲတစ်ခုသို့ 0 င် ရောက်သောအခါရိုးရိုး PHP script ကိုဖန်တီးသည်။

 <?php

require 'vendor/autoload.php';

use Slim\Factory\AppFactory;

$app = AppFactory::create();

// တစ် ဦး ကိုသတ်မှတ် REST API လမ်းကြောင်း
$app->get('/sunset', function ($request, $response, $args) {
    // တောင်းဆိုမှု parameters တွေကိုရယူပါ
    $latitude = $request->getQueryParams()['latitude'] ?? 0;
    $longitude = $request->getQueryParams()['longitude'] ?? 0;
    
    // ထိရောက်သောလတ်တီတွဒ်နှင့်လောင်ဂျီတွဒ်ကိုသေချာပါစေ
    if (!is_numeric($latitude) || !is_numeric($longitude)) {
        $response->getBody()->write(json_encode(['error' => 'Invalid latitude or longitude']));
        return $response->withStatus(400)->withHeader('Content-Type', 'application/json');
    }

    // နေဝင်ချိန်အချိန်ကိုရယူပါ
    $timestamp = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);

    // format output ကို
    $dateTime = date("Y-m-d H:i:s", $timestamp);
    
    // ပြန်လာ JSON တုံ့ပြန်ချက်
    $response->getBody()->write(json_encode(['sunset' => $dateTime]));
    return $response->withHeader('Content-Type', 'application/json');
});

// လျှောက်လွှာကို run ပါ
$app->run();

ဤကုဒ်နံပါတ်တွင် Slim Framework ကို အသုံးပြု. လတ်တီတွဒ် နှင့် လောင်ဂျီတွဒ်ကို စုံစမ်းမှုဆိုင်ရာသတ်မှတ်ချက်များအဖြစ်လက်ခံပြီးနေဝင်ချိန်အချိန်များကိုပြန်လည်ရောက်ရှိစေသည့်ရိုးရှင်းသော Rest API လမ်းကြောင်း / နေဝင်ချိန် ကိုဖန်တီးရန် Slim Framework ကိုအသုံးပြုသည်။ ရလဒ်မှာရရှိသောရလဒ်မှာ JSON format နှင့်တွက်ချက်မှုနေဝင်ချိန်အချိန်ပါ 0 င်သည်။

4 ။ API ကိုစမ်းသပ်ပါ

PHP script ကိုစတင်ပြီးနောက် API ကိုအောက်ပါ URL မှတစ်ဆင့်စစ်ဆေးနိုင်သည်။

 http://m66.net/sunset?latitude=34.0522&longitude=-118.2437

ဤသည်အောက်ပါနှင့်ဆင်တူ JSON တုံ့ပြန်မှုကိုပြန်လာလိမ့်မည်။

 {
  "sunset": "2025-04-26 19:42:00"
}

5 ။ API ဖြန့်ကျက်

အကယ်. သင်သည်ဤ API ကိုထုတ်လုပ်မှုပတ် 0 န်းကျင်သို့ဖြန့်ဖြူးလိုပါက၎င်းကို PHP-enabled server တွင်အိမ်ရှင်အဖြစ်လက်ခံရန်သို့မဟုတ် Cloud Service (Ess, Heroku စသည်) ကိုသုံးနိုင်သည်။ သင်၏ဆာဗာသည် PHP နှင့် HTTP တောင်းဆိုမှုများကိုထောက်ပံ့သရွေ့ဤ api ကို run နိုင်သည်။

6 ။ API လုပ်ဆောင်နိုင်စွမ်းကိုတိုးချဲ့

သင်ဤ api ကိုသင်လိုချင်သည့်အတိုင်းတိုးချဲ့နိုင်သည်။ ဥပမာအားဖြင့်, သင်ကဲ့သို့သောရက်စွဲများကဲ့သို့သောအသေးစိတ်အချက်အလက်များကိုရှာဖွေခြင်း, ပုံစံအမျိုးမျိုးဖြင့် (ထိုကဲ့သို့သော Unix timixps သို့မဟုတ် UTC အချိန်) မှတစ်ဆင့်ပြန်လည်ပတ်ခြင်း,