La construcción empty() funciona únicamente con variables por ahora, lo que estás usando en la segunda comparación no es una variable sino el resultado de la llamada de un método.
Qué para tu caso ni siquiera es necesario especificar el || pues tendría el mismo efecto que la primer comparación.