No, sigues haciendo las cosas mal.
Entiende que $datos (como ahora la tienes) sigues tratando de usarla antes de el punto donde le asignas valores, haces al revés las cosas, trata de reflexionar tu problema.
Coloca el código que deseas justo en el lugar donde deseas ejecutarlo, no antes.