Uniqid не гарантируется быть уникальным.Если вы выполняете свой скрипт на нескольких серверах, они могут выполнить вызов в ту же микросекунду и дать тот же результат.Однако это очень маловероятно.
Более того, uniqid не возвращает число base-10, поэтому ваш код определенно НЕ даст уникальный результат.