Hola pateketrueke.
 
La verdad es que había probado antes en forma de array pero nada, y ahora viendo tu explacación y que solo lo puedo hacer con array he hecho nuevas búsquedas y creo que así consigo lo que busco:    
Código PHP:
Ver original$campo_imagenes = $_FILES['upload']['tmp_name'];
     $nombre_imagenes = $_FILES['upload']['name'];
 
      if(count($campo_imagenes) > 0){         //Hago un recorrido por cada archivo
        for($i=0; $i<count($nombre_imagenes); $i++) {             //Obtengo la ruta del archivo temporal
            $ruta_archivo_temporal = $campo_imagenes[$i];
 
            //Compruebo si hay algún archivo seleccionado o cargado
            if($ruta_archivo_temporal != ""){
                echo "Hay archivos cargados";
            }
            else{
                echo "No hay archivos cargados";
            }
        }
     }
  
También había probado de otra forma más clásica con foreach pero no lo saco igual que con la anterior.    
Código PHP:
Ver original$campo_imagenes = $_FILES['upload']['tmp_name'];
     
        foreach($campo_imagenes as $file) 
        {           
            //Obtengo la ruta del archivo temporal
            $ruta_archivo_temporal = $campo_imagenes[$i];
 
            //Compruebo si hay algún archivo seleccionado o cargado
            if($ruta_archivo_temporal != ""){
                echo "Hay archivos cargados2";
            }
            else{
                echo "No hay archivos cargados2";
            }
        }
  
Espero que con la primera manera que he puesto arriba esté en lo correcto. Gracias de nuevo, un saludo.