تعديل شهور مع DateTime PHP: الكشف عن السلوك المقصود
عند العمل مع فئة قاعدة بيانات PHP ، قد لا تسفر عن الشهور أو طرحها دائمًا عن النتائج المتوقعة. مع تحذير الوثائق ، "احذر" من هذه العمليات ، لأنها ليست بديهية كما تبدو. تاريخ $-> تعديل ('1 شهر') ؛ // المضي قدمًا في شهر واحد ECHO $ DATE-> FORMAT ('Y-M-D'). "\ n" ؛ // المطبوعات 2001-01-31 تاريخ $-> تعديل ('1 شهر') ؛ // تقدم شهر آخر ECHO $ DATE-> FORMAT ('Y-M-D'). "\ n" ؛ // يطبع 2001-03-03
بدلاً من زيادة الشهر كما هو متوقع ، فإن النتيجة هي قفزة حتى 3 مارس. لماذا هذا؟ الأول من فبراير. يؤدي إضافة شهر آخر الآن في 3 مارس ، لأن شهر فبراير لديه 28 يومًا فقط في عام 2001.
الخيارات:
$date = new DateTime('2000-12-31'); $date->modify(' 1 month'); // Move ahead by 1 month echo $date->format('Y-m-d') . "\n"; // Prints 2001-01-31 $date->modify(' 1 month'); // Advance another month echo $date->format('Y-m-d') . "\n"; // Prints 2001-03-03
حساب يدوي:
تحقق من عدد الأيام في الشهر المقبل وضبط التاريخ يدويًا وفقًا لذلك.
فهم السلوك المقصود لعمليات تعديل شهر DateTime أمر بالغ الأهمية لتجنب النتائج غير المتوقعة. باستخدام حساب اليدوي أو ميزة "اليوم الأول من الشهر المقبل" ، يمكنك تحقيق وظيفة معالجة التاريخ المطلوبة في تطبيقات PHP الخاصة بك.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3