Загрузите 2 файла Excel с использованием PHP в codeigniter через PHPSpreadsheet

os.walk дает вам путь к каталогу в качестве первого значения в цикле, просто используйте os.path.join() для создания полного имени файла:

shpfiles = []
for dirpath, subdirs, files in os.walk(path):
    for x in files:
        if x.endswith(".shp"):
            shpfiles.append(os.path.join(dirpath, x))

Я переименовал path в цикле в dirpath, чтобы не конфликтовать с переменной path, которую вы уже проходили до os.walk().

Обратите внимание, что вам не нужно проверять, есть ли результат .endswith() == True; if уже делает это для вас, часть == True полностью избыточна.

Вы можете использовать .extend() и выражение генератора, чтобы сделать приведенный выше код немного более компактным:

shpfiles = []
for dirpath, subdirs, files in os.walk(path):
    shpfiles.extend(os.path.join(dirpath, x) for x in files if x.endswith(".shp"))

или даже как одно понимание списка:

shpfiles = [os.path.join(d, x)
            for d, dirs, files in os.walk(path)
            for x in files if x.endswith(".shp")]
0
задан Julie 17 January 2019 в 07:07
поделиться

1 ответ

Вам нужно зациклить на $ _FILES, как показано ниже код

if (

Вам нужно зациклить на $ _FILES, как показано ниже код

[110]

}

FILES['upload']) { $file_ary = reArrayFiles(

Вам нужно зациклить на $ _FILES, как показано ниже код

[110]

}

FILES['ufile']); foreach ($file_ary as $file) { print 'File Name: ' . $file['name']; print 'File Type: ' . $file['type']; print 'File Size: ' . $file['size']; }

}

0
ответ дан Naveed Ul Islam 17 January 2019 в 07:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: