شرح صفوف ومحتوى الفقرة
لتوليد تواريخ الفوترة الدورية أو المواعيد الأسبوعية المتكررة بين تاريخين، تقدم بخطوات ثابتة باستخدام تاريخ البداية والفترة الزمنية.
- في PHP 8.2+ يمكن توليد السلاسل الزمنية المتكررة وفق صيغة التكرار القياسية ISO-8601 أو بالتقدم الدوري عبر فترة ثابتة.
- في السكريبتات الإجرائية، يتيح تحريك المؤشر الزمني عبر
date_add($cursor, $step)داخل حلقةforأوwhileتوليد المواعيد الدورية بدقة. - تحافظ الفترات التقويمية مثل
"7 days"أو"1 month"على ثبات الساعة المحلية حتى عند تغير التوقيت الصيفي.
بدءاً من 2026-04-01، تسجل كل دورة التاريخ المنسق وتُقدم المؤشر $cursor بمقدار 7 أيام.
PHP
<?php
date_default_timezone_set('UTC');
$cursor = date_create_immutable('2026-04-01');
$step = date_interval_create_from_date_string('7 days');
$slots = [];
for ($i = 0; $i < 4; $i++) {
$slots[] = date_format($cursor, 'Y-m-d');
$cursor = date_add($cursor, $step);
}
echo implode(' -> ', $slots) . "\n";