Я объявил переменную с помощью функции, но получаю & quot; fopen (): имя файла не может быть пустым & quot;

Поэтому я хочу, чтобы открыть файл и объявить путь этого файла над функцией ..
в этой функции я загружаю файл и возвращаю путь к нему ..

$file = upload(); <- where i declare the variable

function upload(){
//UPLOAD
if (isset($_FILES['datei'])) {
ini_set("auto_detect_line_endings", true);
$upload_folder = getcwd().'/uploads/'; //Das Upload-Verzeichnis
$filename = pathinfo($_FILES['datei']['name'], PATHINFO_FILENAME);
$extension = strtolower(pathinfo($_FILES['datei']['name'], PATHINFO_EXTENSION));
//Überprüfung der Dateiendung
$allowed_extensions = array('csv');
if(!in_array($extension, $allowed_extensions)) {
die("Ungültige Dateiendung. Nur csv-Dateien sind erlaubt");
}

//Pfad zum Upload
$new_path = $upload_folder.$filename.'.'.$extension;

//Neuer Dateiname falls die Datei bereits existiert
if(file_exists($new_path)) { //Falls Datei existiert, hänge eine Zahl an den Dateinamen
$id = 1;
do {
$new_path = $upload_folder.$filename.'_'.$id.'.'.$extension;
$id++;
} while(file_exists($new_path));
}

//Alles okay, verschiebe Datei an neuen Pfad
move_uploaded_file($_FILES['datei']['tmp_name'], $new_path);
echo 'Datei erfolgreich hochgeladen';
return $new_path;
}
}

и здесь я хочу открыть файл

$row = 1;
if (($handle = fopen($file, "r", 1)) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
rowformating($data);
}
fclose($handle);
}

РЕДАКТИРОВАТЬ:

Кажется, ошибка появляется только тогда, когда я проверяю файл на наличие ошибок. если я выполню файл и загрузлю что-то, «$ file» будет заполнен путем загрузки файла

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]