পিএইচপি ডকুমেন্টেশনে এক নজর রেখে, DateTime
অবজেক্টের নিম্নলিখিত দুটি পদ্ধতি উভয়ই আমার সমস্যার সমাধান করবে বলে মনে হচ্ছে:
- ডেটটাইম :: ডিফ : পার্থক্যটি পান এবং কোনটি বেশি প্রাচীন তা নির্ধারণ করতে এটি ব্যবহার করুন।
- ডেটটাইম :: গেটটাইমস্ট্যাম্প : ইউনিক্স টাইমস্ট্যাম্প্ট পান এবং সেগুলি তুলনা করুন।
এই দুটি পদ্ধতিই ডকোতে সংস্করণ> = 5.3 এ উপলব্ধ হিসাবে চিহ্নিত হয়েছে (এবং অবাক হওয়ার মতো নয়, যদি আমি তাদের কল করার চেষ্টা করি তবে সেগুলির অস্তিত্ব নেই)। আমি 5.2.8 এর জন্য কোনও নির্দিষ্ট নথিপত্র পাই না সুতরাং আমার সংস্করণে সমতুল্য পদ্ধতি আছে কিনা তা সম্পর্কে আমি নিশ্চিত নই। আমি সমস্যাটি গুগল করে দিয়েছি এবং এর সমাধানের একটি সারগ্রাহী পরিসীমা পেয়েছি, যার কোনোটাই আমার খুব সাধারণ প্রয়োজনীয়তার উত্তর দেয় না:
- আমি কীভাবে দুটি ডেটটাইম অবজেক্টের তুলনা করব?
- পূর্ববর্তী পিএইচপি সংস্করণগুলির জন্য ডকোটি কোথায় খুঁজে পাব? বিশেষত সংস্করণ 5.2.8?
কিছু প্রসঙ্গে, আমার কাছে নিম্নলিখিত কোড রয়েছে:
$st_dt = new DateTime(verifyParam ('start_date'));
$end_dt = new DateTime(verifyParam ('end_date'));
// is the end date more ancient than the start date?
if ($end_dt < $start_dt)
স্পষ্টতই এই লোকটির তুলনায় কোনও তুলনামূলক অপারেটর নেই।
সম্পাদন করা
স্পষ্টতই আমার অনুমানগুলি সম্পূর্ণ মিথ্যা ছিল (এটি এত কার্যকরভাবে চিত্রিত করার জন্য মাইলেনকে ধন্যবাদ)। একটি তুলনা অপারেটর আছে এবং এটি ঠিক আছে ধন্যবাদ ধন্যবাদ। কখনও কখনও আমি সত্যিই একটি সংকলক মিস করি। বাগটি উপরের কোডটিতে রয়েছে, আমি নিশ্চিত যে আপনি এটি আমার চেয়ে অনেক দ্রুত খুঁজে পেয়েছেন :)।
$_POST
, বা বিড়ালছানা হত্যা করা হবে।