Reputation: 6655
I'm building an app that pulls data in from an excel .csv file and applying various levels of formatting, moving and mapping. Most everything is figured out except for one hitch with cleaning the data. Here is an example of the data from Excel:
I can't do a straight explode() because of line 3's 2 and 4. There is a "string, string" on both of those lines and I have no control over the data exporting, just cleaning on import.
I've tried a number of non-graceful options and it's killing the processing time. Can anyone think of an elegant solution?
I can't use the MySQL IMPORT functionality, it has to be handled via PHP unfortunately.
Upvotes: 2
Views: 293
Reputation: 10033
I see your question has been answered. But if you wanted to read the file into PHP for use, you could just have used fgetcsv.
Upvotes: 4
Reputation: 562230
You can also try executing a SQL statement:
LOAD DATA INFILE 'mydata.csv'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"';
I hear you about using PHP, but you can run the statement above from PHP. Or do you mean that the input is a stream resulting from reading CSV, not a CSV file? Unfortunately LOAD DATA INFILE requires a filename, it can't take standard input.
Upvotes: 7