$v) { if (is_callable($column_key)) { $key_value = $column_key($v); } else { $key_value = $v[$column_key]; } if (! isset($results[$key_value])) { $results[$key_value] = array(); } $results[$key_value][$k] = $v; } return $results; } } if (! function_exists('get_csv')) { function get_csv($arr, $fields=array(), $sep=";") { $str = ''; if (! empty($arr)) { if (empty($fields)) { $fields = array_keys($arr[0]); } $line = array(); foreach ($fields as $k => $v) { if (! is_numeric($k)) { $line[] = $k; } else { $line[] = $v; } } $str .= implode($sep, $line) . PHP_EOL; foreach ($arr as $row) { $line = array(); foreach ($fields as $field) { $line[] = $row[$field]; } //$str .= implode($sep, $line) . PHP_EOL; //$str .= '"' . implode('"' . $sep . '"', str_replace('"', '\\"', $line)) . '"' . PHP_EOL; $str .= '"' . implode('"' . $sep . '"', str_replace('"', '""', $line)) . '"' . PHP_EOL; } } return $str; } }