Ik heb een WordPress plugin geschreven die een .csv uitleest en op basis hiervan producten (in WooCommerce) aanpast. Het enige wat nodig is uit de csv zijn twee kolommen: SKU en prijs.
Op het moment gebruik ik hiervoor het volgende stukje om de csv uit te lezen en in een array te plaatsen:
Vervolgens gebruik ik een foreach() om ieder product te updaten.
Op deze manier werkt het prima, echter kan het zijn dat de maximum tijd overschreden wordt doordat er een grote csv (20.000+ lines, vaak met meerdere kolommen dan nodig zijn) wordt gebruikt.
Mijn vraag is: wat is de aanpak om het net als WP All Import de import altijd goed te laten verlopen, zonder dat de tijd overschreden wordt en zonder dat ik teveel memory gebruik.
Op het moment gebruik ik hiervoor het volgende stukje om de csv uit te lezen en in een array te plaatsen:
PHP:
1
| $products = array_map(function($a){return str_getcsv($a, $delimiter);}, explode("\n", $result)); |
Vervolgens gebruik ik een foreach() om ieder product te updaten.
Op deze manier werkt het prima, echter kan het zijn dat de maximum tijd overschreden wordt doordat er een grote csv (20.000+ lines, vaak met meerdere kolommen dan nodig zijn) wordt gebruikt.
Mijn vraag is: wat is de aanpak om het net als WP All Import de import altijd goed te laten verlopen, zonder dat de tijd overschreden wordt en zonder dat ik teveel memory gebruik.