К примеру есть диапазон 10.11.2022 - 21.12.2023. И скажем нужен номер дня в дате 05.04.2023 из всего этого диапазона
Давайде что ли больше лет возьмём для лучшего понимания общего случая. Пусть начальная дата будет 10.11.2020. Тогда
= 1 - номер дня (10.11.2020)
+ номер дня (31.12.2020)
+ номер дня (31.12.2021)
+ номер дня (31.12.2022)
+ номер дня (05.04.2023)
Ну а на основании этого цикл по годам напишите самостоятельно,
spoilerя последний раз на php писал в ~1998 г., лень гуглить синтаксис.
Почему вообще нужен цикл? Потому что в високосных годах на 1 день больше, а вычислять это формулой сложнее, чем через цикл. В случае жесткой оптимизации по скорости лучше заморочиться с формулой без цикла. В сущности, нужно умножить на 365 количество полных лет в промежутке и добавить количество високосных лет.
Заметьте, что конечная дата диапазона не используется и не влияет на вычисления.