یک اسکریپت PHP بنویسید که دو تاریخ ورودی (فرمت YYYY-MM-DD) را دریافت کند و با استفاده از کلاس DateTime و تابع date_diff تعداد سالها، ماهها و روزهای بین آنها را محاسبه و نمایش دهد.
11.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:57 0.0
برای حل این مسئله از ورودیها دو شیء DateTime بسازید (با new DateTime(...) یا date_create_from_format('Y-m-d', ...)) و سپس با متد diff یا تابع date_diff یک DateInterval بهدست آورید. با استفاده از متد format روی DateInterval خروجی را به صورت "%y سال، %m ماه، %d روز" نمایش دهید؛ برای گرفتن فاصلهٔ مطلق میتوانید پارامتر absolute را true قرار دهید و ورودیها را قبل از پردازش اعتبارسنجی یا در try/catch مدیریت خطا کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای ایمنسازی ورودیها از try/catch و اعتبارسنجی فرمت تاریخ استفاده کنید تا خطای تبدیل DateTime مدیریت شود. استفاده از DateTimeImmutable بهجای DateTime میتواند از تغییرهای ناخواستهٔ شیء تاریخ جلوگیری کند. هنگام محاسبه فاصله دو تاریخ از diff با پارامتر absolute = true استفاده کنید تا فاصلهٔ مطلق برگردد و خروجی با قالب مانند %y سال، %m ماه، %d روز نمایش داده شود. همچنین به تفاوتهای تقویمی مانند کبیسه بودن سالها توجه کنید و به کاربر ورودیهای معتبر بدهید.
گزارش