Как сделать чтобы while останавливался на 1 секунду?
while ($timer = 0) {

Это не условие, а присвоение. 
Код работает совсем не так как вы сейчас ожидаете. 

Добавьте недостающие !=
ну у вас там написано sleep(60); это остановка на 60 сек. Если нужно 1 сек это 1. значит меняй на: sleep(1); это и есть 1 секундная пауза внутри while. или нужно что-то другое? и зачем вообще городить огород из while когда можно просто указать длину паузы?