Я пытаюсь вставить данные из загруженного файла в массив одного измерения.
Файл таков, что в строке есть один номер студента, например:
392232,
392231,
и т. Д.
это наиболееобщий способ, который я нашел в Интернете:
while (($line = fgetcsv($file, 25, ',')) !== FALSE) {
//$line is an array of the csv elements
print_r($line);
}
Однако, насколько я понимаю, это создаст массив ($line
) для каждой строки.Это не то, что я хочу.
, что в стороне, я попробовал это, чтобы увидеть, работает ли он, и мой код не распечатывает массив после использования ftgetcsv ().Файл успешно загружается.
вот мой код:
if(isset($_FILES['csv_file']) && is_uploaded_file($_FILES['csv_file']['tmp_name'])){
//create file name
$file_path = "csv_files/" . $_FILES['csv_file']['name'];
//move uploaded file to upload dir
if (!move_uploaded_file($_FILES['csv_file']['tmp_name'], $file_path)) {
//error moving upload file
echo "Error moving uploaded file";
}
print_r($_FILES['csv_file']);
$file = fopen('$file_path', 'r');
while (($line = fgetcsv($file, 25, ',')) !== FALSE) {
//$line is an array of the csv elements
print_r($line);
}
//delete csv file
unlink($file_path);
}
Во-первых, может кто-нибудь, очевидно, понять, почему не сработает, по крайней мере, распечатать их как отдельныемассивы данных (каждая строка).
Во-вторых, возможно ли установить его так, чтобы он создавал массив 1d всех строк в файле?
Большое спасибо,