I'm not sure this is the best way.
But you could run a if/then/else loop
For each integer X to NumberOfTimersInYourArray
loop -
If -
Timer [integer x] = expiring timer
Then -
Set TimerArrayNumber = Integer X
Else -
That works if you only have a few timers. If you however have lots of timers this will get very slow, also its very uncomfortable to write. Attacking data to timers using hashtables is the cleaner solution.
That is more efficient in some cases, but slower in others. It is also harder to manage and maintain to some degree.you should use one timer for the map and an integer array which gets incremented every time the timer runs, if the timer runs 300 times per second and you want something done every 3 seconds for a specific unit and assuming your integer array always starts at 0 then whenever it equals 900 you should execute whatever action u want and then reset it to 0 again