fbpx
ISTOTEXNIKI
WEB SOLUTIONS
export script from zip file to xml csv

Script για εξαγωγή zip αρχείου σε xml ή csv

extract-zip-to-xml-csv-for-import

Script για εξαγωγή zip αρχείου σε xml ή csv αυτόματα σε κάποιο φάκελο στον server μας. Είναι αναγκαίο καθώς ειδικά στο WordPress, αν χρησιμοποιείτε το πρόσθετο WP ALLIMPORT PRO, δεν υποστηρίζει εισαγωγή από zip αρχείο, παρά μόνο xml ή csv. Σε αυτή την περίπτωση με τον παρακάτω κώδικα, εξάγετε live το αρχείο σας σε ένα φάκελο που επιθυμείτε, οπότε και έχετε το αρχείο σας σε live xml / csv. Εξυπακούεται ότι το zip link οδηγεί ήδη σε κάποιο xml / csv αρχείο όταν προσπαθείτε να ανοίξετε το url του.

Η διαδικασία είναι απλή, δημιουργείστε ένα νέο αρχείο php και μέσα κάντε αντιγραφή τον παρακάτω κώδικα. Απλά θα αντικαταστήσετε τα demo url (“your_zip_link”) που βάλαμε με το αντίστοιχο δικό σας και όταν θα “τρέχετε” το αρχείο αυτό, θα εξάγει το xml / csv στο φάκελο “dfolder“.

Μπορείτε να χρησιμοποιήσετε ένα cron job να τρέχει ανά κάποιο διάστημα (όσο συχνά θέλετε) έτσι ώστε να έχετε πάντα την πιο πρόσφατη έκδοση του αρχείου σας.

<?php 


$url = "your_zip_link";

$zip_file = "downloadfile.zip";

$zip_resource = fopen($zip_file, "w");

$ch_start = curl_init();
curl_setopt($ch_start, CURLOPT_URL, $url);
curl_setopt($ch_start, CURLOPT_FAILONERROR, true);
curl_setopt($ch_start, CURLOPT_HEADER, 0);
curl_setopt($ch_start, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch_start, CURLOPT_AUTOREFERER, true);
curl_setopt($ch_start, CURLOPT_BINARYTRANSFER,true);
curl_setopt($ch_start, CURLOPT_TIMEOUT, 10);
curl_setopt($ch_start, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch_start, CURLOPT_SSL_VERIFYPEER, 0); 
curl_setopt($ch_start, CURLOPT_FILE, $zip_resource);
$page = curl_exec($ch_start);
if(!$page)
{
 echo "Error :- ".curl_error($ch_start);
}
curl_close($ch_start);

$zip = new ZipArchive;
$extractPath = "dfolder";
if($zip->open($zip_file) != "true")
{
 echo "Error :- Unable to open the Zip File";
} 

$zip->extractTo($extractPath);
$zip->close();

?>
ΚΛΕΙΣΙΜΟ