/** * CSV * datasetName, newDatasetName */ $CkanManager->resultsDir = $results_dir; foreach (glob(CKANMNGR_DATA_DIR . '/rename*.csv') as $csv_file) { $status = PHP_EOL . PHP_EOL . basename($csv_file) . PHP_EOL . PHP_EOL; echo $status; // fix wrong END-OF-LINE file_put_contents($csv_file, preg_replace('/[\\r\\n]+/', "\n", file_get_contents($csv_file))); $basename = str_replace('.csv', '', basename($csv_file)); file_put_contents($results_dir . '/' . $basename . '_rename.log', $status, FILE_APPEND | LOCK_EX); $csv = new EasyCSV\Reader($csv_file, 'r+', false); $i = 1; while (true) { $row = $csv->getRow(); if (!$row) { break; } // skip headers if (in_array(trim(strtolower($row['0'])), ['dataset', 'url', 'old dataset url', 'from'])) { continue; } $datasetName = trim(basename($row['0'])); $newDatasetName = basename($row['1']); printf('[%04d] ', $i++); $CkanManager->renameDataset($datasetName, $newDatasetName, $basename); } } // show running time on finish timer();