উত্তর:
যেহেতু পিএইচপি> = 5.2.2 আপনি DateTime
ক্লাসটি ব্যবহার করতে পারেন তা :
if (new DateTime() > new DateTime("2010-05-15 16:00:00")) {
# current time is greater than 2010-05-15 16:00:00
# in other words, 2010-05-15 16:00:00 has passed
}
ডেটটাইম কনস্ট্রাক্টরকে দেওয়া স্ট্রিং এই নিয়ম অনুসারে পার্স করা হয় ।
নোট করুন যে এটি ব্যবহার time
এবং strtotime
ফাংশনগুলিও সম্ভব । আসল উত্তর দেখুন ।
new DateTime('2010-05-15')
এটি কেবল একটি উদাহরণ, কোনও ডেটটাইম অবজেক্ট হতে পারে যা আপনি আগে শুরু করেছিলেন।
$object
নেওয়া একটি ডেটটাইম অবজেক্ট, আমি ব্যবহার করেছি if (new DateTime() > $object) {}
এবং এটি ভুলভাবে কাজ করে। তবে সঠিকভাবে if (time() > $bject->getTimeStamp()) {}
কাজ করে। @ সালমান এ
এছাড়াও ডেটটাইম ক্লাস রয়েছে যা তুলনা অপারেটরদের জন্য একটি ফাংশন প্রয়োগ করে।
// $now = new DateTime();
$dtA = new DateTime('05/14/2010 3:00PM');
$dtB = new DateTime('05/14/2010 4:00PM');
if ( $dtA > $dtB ) {
echo 'dtA > dtB';
}
else {
echo 'dtA <= dtB';
}
strtotime
আপনার সেট তারিখ / সময়কে একটি টাইমস্ট্যাম্পে রূপান্তর করতে পিএইচপি-র কাজটি পরীক্ষা করুন : http://php.net/manual/en/function.strtotime.php
যদি strtotime
আপনার তারিখ / সময় ফর্ম্যাটটি সঠিকভাবে পরিচালনা করতে না পারে ("4:00 pm" সম্ভবত "4PM" তে কাজ করবে না), আপনাকে স্ট্রিং-ফাংশনগুলি ব্যবহার করতে হবে, যেমন substr
আপনার ফর্ম্যাটটি পার্স / সংশোধন করতে এবং আপনার টাইমস্ট্যাম্পটি পুনরুদ্ধার করার জন্য অন্য ফাংশন, যেমন mktime
।
তারপরে নির্ধারিত টাইমস্ট্যাম্পটিকে বর্তমান তারিখ / সময় ( if ($calulated_timestamp > time()) { /* date in the future */ }
) এর সাথে তুলনা করুন নির্ধারিত তারিখ / সময় অতীতে বা ভবিষ্যতে আছে কিনা তা দেখতে।
আমি তারিখ / সময়-ফাংশনে পিএইচপি-ডকটি পড়ার পরামর্শ দিই এবং একবার আটকে গেলে আপনার কিছু উত্স-কোড নিয়ে এখানে ফিরে আসুন।
date_default_timezone_set('Asia/Kolkata');
$curDateTime = date("Y-m-d H:i:s");
$myDate = date("Y-m-d H:i:s", strtotime("2018-06-26 16:15:33"));
if($myDate < $curDateTime){
echo "active";exit;
}else{
echo "inactive";exit;
}
$myDate
এটি সমান হবে হিসাবে কাজ করবে না string (0) ""
।