My understanding is:
Think of PHPFINA as a time slot. Data that arrives while that slot is open gets stored in it. If another data item arrives before the slot closes, it overwrites the one already there. If it misses the slot, the slot remains empty. All that’s inside emonCMS. If you send it value, it goes into the slot that’s open when it arrives. Going just a little deeper into the storage mechanism, time is computed from the start time of the database, the interval and the record number.
You have a few minutes or hours of empty records.
Say the recording interval is 20 s, and the arrival interval is 25 s, and the first data item arrives just after its slot is opened. It’s stored in the correct slot.
The second arrives 5 s and a bit into its slot. It’s stored in the correct slot.
The third arrives 10 s and a bit into its slot. It’s stored in the correct slot.
The fourth arrives 15 s and a bit into its slot. It’s stored in the correct slot.
The fifth arrives 20 s and a bit after its slot opened, and it missed it, and goes into the 6th slot. Slot 5 is empty.
So (a) you have a gap, and (b) all the values have a time that varies by up to 20 s from the time the data was received. Whether that matters, and so whether you need PHPTimeseries, is something for you to decide. Without knowing what the precise instant the data arrives means to you, and if the gaps of hours are the exception rather than normality, then PHPFINA is probably what you need.