str_getcsv разбираем строку CSV в массив |
03.03.2011 16:52 |
Иногда возникает необходимость распарсить CSV файл средствами PHP. Все очень просто, нам понадобится функция php str_getcsv. Но что делать когда версия php не поддерживает функцию str_getcsv, а разобрать строку CSV в массив очень нужно. Выход есть, сами напишем функцию и будем ею пользоваться.
if(!function_exists('str_getcsv')) { function str_getcsv($input, $delimiter = ",", $enclosure = '"', $escape = "\\") { $fp = fopen("php://memory", 'r+'); fputs($fp, $input); rewind($fp); $data = fgetcsv($fp, null, $delimiter, $enclosure); // $escape добавлена в php 5.3.0 fclose($fp); return $data; } } иногда для правильного определения конца строки надо добавить в начале скрипта следующий код ini_set("auto_detect_line_endings", true); |