Se você olhar para um strace
do processo, você pode ver que o PHP sempre inicializa o terminal, o que requer que o PHP controle o terminal:
ioctl(0, TCSETSW, {B38400 opost isig icanon echo ...}) = ? ERESTARTSYS
--- {si_signo=SIGTTOU, si_code=SI_KERNEL} (Stopped (tty output)) ---
--- Stopped (tty output) by SIGTTOU ---
Uma solução simples:
./test.php > /dev/null &