আমি যে তারিখটি নির্দিষ্ট করেছিলাম তার এক বছর পরের তারিখটি পাওয়ার চেষ্টা করছি।
আমার কোডটি এর মতো দেখাচ্ছে:
$futureDate=date('Y-m-d', strtotime('+one year', $startDate));
এটি ভুল তারিখটি ফিরিয়ে দিচ্ছে। কোন ধারণা কেন?
আমি যে তারিখটি নির্দিষ্ট করেছিলাম তার এক বছর পরের তারিখটি পাওয়ার চেষ্টা করছি।
আমার কোডটি এর মতো দেখাচ্ছে:
$futureDate=date('Y-m-d', strtotime('+one year', $startDate));
এটি ভুল তারিখটি ফিরিয়ে দিচ্ছে। কোন ধারণা কেন?
উত্তর:
আজকের তারিখে এক বছর যুক্ত করতে নিম্নলিখিতগুলি ব্যবহার করুন:
$oneYearOn = date('Y-m-d',strtotime(date("Y-m-d", mktime()) . " + 365 day"));
অন্যান্য উদাহরণের জন্য আপনাকে আরম্ভ করতে হবে example টাইমস্ট্যাম্প মান সহ স্টার্টিংডেট উদাহরণস্বরূপ:
$StartingDate = mktime(); // todays date as a timestamp
এটা চেষ্টা কর
$newEndingDate = date("Y-m-d", strtotime(date("Y-m-d", strtotime($StaringDate)) . " + 365 day"));
বা
$newEndingDate = date("Y-m-d", strtotime(date("Y-m-d", strtotime($StaringDate)) . " + 1 year"));
$futureDate=date('Y-m-d', strtotime('+1 year'));
$ ভবিষ্যতের তারিখ এখন থেকে এক বছর!
$futureDate=date('Y-m-d', strtotime('+1 year', strtotime($startDate)) );
$ ভবিষ্যতের তারিখ স্টার্টডেট থেকে এক বছর!
$futureDate=date('Y-m-d',strtotime('+1 year',$startDate));
নীচে উল্লিখিত কে প্রাইম হিসাবে করুন।
চেষ্টা করুন: $futureDate=date('Y-m-d',strtotime('+1 year',$startDate));
,
করতে .
এবং এটা কাজ date("Y-m-d",strtotime('+1 year '.$startDate))
;
// Declare a variable for this year
$this_year = date("Y");
// Add 1 to the variable
$next_year = $this_year + 1;
$year_after = $this_year + 2;
// Check your code
echo "This year is ";
echo $this_year;
echo "<br />";
echo "Next year is ";
echo $next_year;
echo "<br />";
echo "The year after that is ";
echo $year_after;
আমি ওও পদ্ধতির পছন্দ করি:
$date = new \DateTimeImmutable('today'); //'today' gives midnight, leave blank for current time.
$futureDate = $date->add(\DateInterval::createFromDateString('+1 Year'))
DateTimeImmutable
অন্যথায় ব্যবহার করুন আপনিও আসল তারিখটি সংশোধন করবেন! ডেটটাইমআইমুটেবল আরও: http://php.net/manual/en/class.datetimeimmutable.php
আপনি যদি কেবল আজকের তারিখ থেকে চান তবে আপনি সর্বদা এটি করতে পারেন:
new \DateTimeImmutable('-1 Month');
strtotime()
ফিরে আসছে bool(false)
, কারণ এটি স্ট্রিংকে বিশ্লেষণ করতে পারে না '+one year'
(এটি "এক" বোঝে না)। false
তারপরে স্পষ্টভাবে integer
টাইমস্ট্যাম্পে কাস্ট করা হচ্ছে 0
। আপনি অন্যান্য ফাংশনগুলিতে ঝাঁকুনির আগে এটির strtotime()
আউটপুট না হয় তা যাচাই করা ভাল ধারণা bool(false)
।
রিটার্ন মান
সাফল্যের জন্য একটি টাইমস্ট্যাম্প ফিরিয়ে দেয়, অন্যথায় মিথ্যা। পিএইচপি 5.1.0 এর আগে, এই ফাংশনটি ব্যর্থতার পরে -1 আসবে।
একটি সহজ এবং কম পরিশীলিত সমাধানও রয়েছে:
$monthDay = date('m/d');
$year = date('Y')+1;
$oneYearFuture = "".$monthDay."/".$year."";
echo"The date one year in the future is: ".$oneYearFuture."";
আমার সমাধানটি হ'ল: date('Y-m-d', time()-60*60*24*365);
আপনি এটিকে সংজ্ঞায়িত করে আরও "পঠনযোগ্য" করতে পারেন:
define('ONE_SECOND', 1);
define('ONE_MINUTE', 60 * ONE_SECOND);
define('ONE_HOUR', 60 * ONE_MINUTE);
define('ONE_DAY', 24 * ONE_HOUR);
define('ONE_YEAR', 365 * ONE_DAY);
date('Y-m-d', time()-ONE_YEAR);