در PHP با استفاده از تابع strtotime و کلاس DateTime یک اسکریپت بنویسید که یک رشته تاریخ ورودی از کاربر (مثلاً "next Monday" یا "2025-06-01") را گرفته، آن را به فرمت "Y-m-d H:i:s" نمایش دهد و تعداد روزهای باقیمانده تا آن تاریخ را محاسبه کند.
3.0 بازدید آخرین ویرایش در 203 روز قبل ساعت 02:38 0.0
برای حل این مسئله از تابع strtotime برای تبدیل رشته تاریخ به timestamp و از کلاس DateTime برای قالببندی و محاسبه اختلاف تاریخ استفاده کنید؛ ابتدا مقدار strtotime را بررسی کنید که false نباشد، سپس یک شیء DateTime برای تاریخ هدف و یک DateTime برای تاریخ فعلی ساخته و با متد diff تعداد روزها را محاسبه کنید. نکات: کنترل ورودی و مدیریت timezone با date_default_timezone_set، و نمایش نتایج با format("Y-m-d H:i:s") و بررسی مقادیر منفی در صورت گذشته بودن تاریخ مفید است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
بهطور امن نتیجهٔ strtotime را بررسی کنید و اگر false بود ورودی نامعتبر است. قبل از محاسبه با date_default_timezone_set، منطقه زمانی مناسب را مشخص کنید تا تفاوت روزها دقیق باشد. با ساختن تاریخ هدف از timestamp با new DateTime('@'.$ts) و مقایسه با تاریخ فعلی با diff، میتوانید از $diff->days استفاده کنید تا تعداد روزهای باقی مانده را نمایش دهید. اگر تاریخ گذشته است، با چک کردن $diff->invert مقدار منفی نمایش داده شود یا منفی بودن را به کاربر نشان دهید.
گزارش