¿Por qué la carga de imágenes falla la comprobación de is_uploaded_file de php?

Tengo un formulario html que permite la carga de imágenes, pero la imagen cargada ahora falla el chequeo “is_uploaded_file” por algún motivo.

Entonces, ¿por qué la carga falla la verificación is_uploaded_file?

HTML:

PHP:

 // returns false echo is_uploaded_file($file['tmp_name'])?'true':'false'; 

Hice un volcado en la matriz $ file o $ _FILES:

 Array ( [name] => add or remove.jpg [type] => image/jpeg [tmp_name] => E:\\xampp\\tmp\\phpB9CB.tmp [error] => 0 [size] => 71869 ) 

El tamaño del archivo no es demasiado grande y el error fue 0. Entonces, ¿por qué falla la comprobación is_uploaded_file?

    Puede ser un problema con Windows, ya que distingue entre mayúsculas y minúsculas y no coincidirá si la ruta es diferente. Intenta usar realpath($file['tmp_name'])

    prueba con

     if (is_uploaded_file($_FILES['data[Recipe][image]']['tmp_name'])) 

    recuerda $_FILES es una variable PHP superglobal de reserva … así que siempre escribo en mayúscula

    Puedes recuperar la ruta correcta del archivo usando

    $filename = basename($_FILES['userfile']['name']);

    NOTA: ¿por qué usa array en el atributo name ( name = “data [Recipe] [image]” )?

    si no hay un motivo específico, entonces siempre se hace un código simple

      

    y verificar simplemente

      if (is_uploaded_file($_FILES['RecipeImage']['tmp_name'])) 

    Recuerda KISS

    Después de haber utilizado la imagen cargada (move_uploaded_file), la función is_uploaded_file siempre devuelve false.