exif_read_data immediately after a move_uploaded_file

I have made a script like this :

if(move_uploaded_file($src, $output_dir )){
$retour["statut"] = 0;
$retour["adresse"] = $output_dir;
//$exif = exif_read_data("http://wfr.zone/localisation_plantes/".$output_dir, 0, true);
$exif = exif_read_data($output_dir, 0, true);
if($exif===false) {
    $retour["exif_present"] = 0;
    
    $tout = "";
    foreach ($exif as $key => $section) {
        foreach ($section as $name => $val) {
            $tout .= "$key.$name: $valn";
        }
    }
    
    
    $retour["exif"] = $tout;

} else {
    $retour["exif_present"] = "Exif absent";
}

}else{
    $retour["statut"] = "move_uploaded_file n'a pas marché.";
};

The move_uploaded_file work, and if i download the photo, she still have the EXIF header.
But in the this script, the exif_read_data call return false.

Near that, i make the test file who use the precedent uploaded photo :

$exif = exif_read_data("http://wfr.zone/localisation_plantes/photos/20221207_122726.jpg", 0, true);
echo $exif === false ? "No header data found.<br />n" : "Image contains headers<br />n";

foreach ($exif as $key => $section) {
    foreach ($section as $name => $val) {
        echo "$key.$name: $val<br />n";
    }
    echo "<hr/>";
}

And the EXIF from the exif_read_data call is correct.

I do not understand why. Should I close something after the move_uploaded_file work ? I have read a lot, and it do not seem that there is something special.

Somebody have an idea ? Thanks !