পিএইচপি, আগামীকাল তারিখ থেকে তারিখ পান


89

আকারে আমার একটি পিএইচপি তারিখ রয়েছে 2013-01-22এবং আমি একই ফরমেটে আগামীকাল তারিখটি পেতে চাই, উদাহরণস্বরূপ 2013-01-23

পিএইচপি দিয়ে এটি কীভাবে সম্ভব?

উত্তর:


211

ডেটটাইম ব্যবহার করুন

$datetime = new DateTime('tomorrow');
echo $datetime->format('Y-m-d H:i:s');

বা:

$datetime = new DateTime('2013-01-22');
$datetime->modify('+1 day');
echo $datetime->format('Y-m-d H:i:s');

বা:

$datetime = new DateTime('2013-01-22');
$datetime->add(new DateInterval("P1D"));
echo $datetime->format('Y-m-d H:i:s');

বা পিএইচপি 5.4+ এ:

echo (new DateTime('2013-01-22'))->add(new DateInterval("P1D"))
                                 ->format('Y-m-d H:i:s');

4
এটি বর্তমান ব্যবহার করে, আমাকে একটি নির্দিষ্ট তারিখে পাস করতে হবে।
জাস্টিন

74
 $tomorrow = date("Y-m-d", strtotime('tomorrow'));

বা

  $tomorrow = date("Y-m-d", strtotime("+1 day"));

সহায়তা লিঙ্ক: স্ট্রোটোটাইম ()


4
আমি এটি ব্যবহার করেছি এবং সমস্ত উত্তরগুলির মধ্যে সংক্ষিপ্ততম এবং সহজতম সংস্করণ, ধন্যবাদ!
বোম্বেলম্যান

17

যেহেতু আপনি এটি দিয়ে ট্যাগ করেছেন , আপনি এটির +1 dayমতো এটির পরিবর্তক দিয়ে ব্যবহার করতে পারেন :

$tomorrow_timestamp = strtotime('+1 day', strtotime('2013-01-22'));

এটি বলেছিল, ডেটটাইম ব্যবহারের জন্য এটি আরও অনেক ভাল সমাধান ।


14
<? php 

//1 Day = 24*60*60 = 86400

echo date("d-m-Y", time()+86400); 

?>

17
নোট করুন যে এটি প্রান্তের ক্ষেত্রে (দিনের আলো সঞ্চয় সময়) ব্যর্থ হবে।
জেজেজে

এই উত্তরটি ভুল। আমার কাছে ক্রোনজব এটি একটি লুপে ব্যবহার করেছে এবং সিস্টেমটি মারা গেছে।
jewelnguyen8


3

ব্যবহার DateTime:

এখন থেকে আগামীকাল পেতে:

$d = new DateTime('+1day');
$tomorrow = $d->format('d/m/Y h.i.s');
echo $tomorrow;

ফলাফল: 28/06/2017 08.13.20

আগামীকাল থেকে একটি তারিখ পেতে:

$d = new DateTime('2017/06/10 08.16.35 +1day')
$tomorrow = $d->format('d/m/Y h.i.s');
echo $tomorrow;

ফলাফল: 11/06/2017 08.16.35

আশা করি এটা সাহায্য করবে!


1
/**
 * get tomorrow's date in the format requested, default to Y-m-d for MySQL (e.g. 2013-01-04)
 *
 * @param string
 *
 * @return string
 */
public static function getTomorrowsDate($format = 'Y-m-d')
{
    $date = new DateTime();
    $date->add(DateInterval::createFromDateString('tomorrow'));

    return $date->format($format);
}


0

প্রথমত, সঠিক বিমূর্ততা নিয়ে আসা সর্বদা একটি চাবিকাঠি। পাঠযোগ্যতা, রক্ষণাবেক্ষণযোগ্যতা এবং প্রসারযোগ্যতার মূল চাবিকাঠি।

এখানে, বেশ সুস্পষ্ট প্রার্থী একজন ISO8601DateTime। কমপক্ষে দুটি বাস্তবায়ন রয়েছে: প্রথমটি হল স্ট্রিং থেকে পার্সড ডেটটাইম এবং দ্বিতীয়টি আগামীকাল। সুতরাং, এখানে দুটি শ্রেণি ব্যবহার করা যেতে পারে এবং তাদের সংমিশ্রণের ফলে কাঙ্ক্ষিত ফলাফল হয়:

new Tomorrow(new FromISO8601('2013-01-22'));

উভয় বস্তু হয় , একটি ISO8601 DATETIME ফলে তাদের পাঠগত উপস্থাপনা তুমি আসলে কি প্রয়োজন নয়। সুতরাং চূড়ান্ত স্ট্রোক হ'ল তাদের একটি তারিখ-রূপ নিতে:

new Date(
    new Tomorrow(
        new FromISO8601('2013-01-22')
    )
);

যেহেতু আপনার কেবল পাঠ্য উপস্থাপনা প্রয়োজন, কেবল কোনও অবজেক্ট নয়, আপনি একটি value()পদ্ধতিতে প্রার্থনা করছেন ।

এই পদ্ধতির সম্পর্কে আরও তথ্যের জন্য, এই পোস্টটি একবার দেখুন ।


-1

এখানে কাজ ফাংশন

function plus_one_day($date){
 $date2 = formatDate4db($date);
 $date1 = str_replace('-', '/', $date2);
 $tomorrow = date('Y-m-d',strtotime($date1 . "+1 days"));
 return $tomorrow; }

ফর্ম্যাটডেট 4 ডিবি ফাংশনটি কী করে? স্ট্র্যাশে স্ল্যাশগুলির সাথে ড্যাশগুলি কেন প্রতিস্থাপন করবেন?
ব্র্যান্ডজিডিজালিস

formatDate4db ফাংশনটি তারিখটি পাস করে এবং এটি ডাটাবেস মাইএসকিএল ফর্ম্যাট, এবং টিআর_রেপ্লেস ফাংশনের মতো একটি ফর্ম্যাট তৈরি করে, আমার তারিখের ফর্ম্যাট 2019/12/10 রয়েছে এবং এর সাথে প্রতিস্থাপন করুন
মুহাম্মদ আওস

-4
$date = '2013-01-22';
$time = strtotime($date) + 86400;
echo date('Y-m-d', $time);

যেখানে 86400 এক দিনের মধ্যে # সেকেন্ড।


11
না, একদিন সর্বদা 86400 সেকেন্ড থাকে না।
নিকব

আমি সমস্যা পাই না। দয়া করে @ নিকব
আইয়ন

@ আইয়ন.প্রিয় দিনগুলি যা দিবালোক সংরক্ষণের সময় বা সময় থেকে স্যুইচ করে
86000

আমি ভেবেছিলাম, ডিএসটি দুপুর দুইটায় শুরু করা হয়েছে এবং এর ফলে কখনই আলাদা তারিখের ফলস্বরূপ হওয়া উচিত?
আইয়ন.প্রিম

সমস্যা দিবালোকের সঞ্চয় নয় isn't একটি ডাটাবেসের টাইমস সত্যই ইউটিসি হিসাবে সংরক্ষণ করা উচিত যার কোনও দিবালোক সংরক্ষণের সময় নেই। আপনি যদি ইউটিসিতে আপনার তারিখগুলি সংরক্ষণ করেন তবে এটি কার্যকর হবে তবে কিছুটা অবসন্ন।
ব্র্যান্ডজিডিজালিস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.