یک تابع PHP بنویسید که با دریافت یک تاریخ مبدا و یک رشته بازه زمانی (مثل "2 days" یا "1 week") تاریخ جدید را با استفاده از date_interval_create_from_date_string محاسبه و به صورت YYYY-MM-DD نمایش دهد.
6.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:18 0.0
برای حل این مسئله از کلاس DateTime برای تبدیل رشته تاریخ به شیء تاریخ استفاده کنید، سپس با استفاده از تابع date_interval_create_from_date_string یک شیء DateInterval بسازید و آن را با متد add یا sub روی شیء DateTime اعمال کنید؛ در نهایت خروجی را با متد format به صورت "Y-m-d" نمایش دهید. نکات مفید: ورودیها را اعتبارسنجی کنید، در صورت امکان از try-catch برای مدیریت خطاهای تاریخ استفاده کنید و به واحد زمانی (time zone) دقت کنید تا نتایج دقیق در محیط وب به دست آید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای ایمنی و دقت، زمان منطقهای (time zone) را هنگام ساخت DateTime تعیین کنید و ورودیهای کاربر را با اعتبارسنجی و مدیریت خطا با try-catch کنترل کنید. استفاده از date_interval_create_from_date_string امکان پذیر است اما بهتر است ورودی مانند "2 days" یا "-2 days" را با اعتبارسنجی تشخیص داده و سپس با DateTime->add یا ->sub اعمال کنید. همواره تاریخ مبدا را به صورت یک شیء DateTime ایجاد کنید و نتیجه را با format('Y-m-d') خروجی بگیرید تا فرمت ثابتی داشته باشید. اگر تاریخ ورودی نامعتبر بود، پیام خطای واضحی ارائه دهید تا دیباگ کردن آسان شود.
گزارش