আমি যে তারিখটি নির্দিষ্ট করেছিলাম তার এক বছর পরের তারিখটি পাওয়ার চেষ্টা করছি।
আমার কোডটি এর মতো দেখাচ্ছে:
$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);