Я пытаюсь импортировать этот CSV: введите описание изображения здесь
Я получаю следующий массив:
CSV Object
(
[columns] => Array
(
[0] => numero
[1] => nombre_pila
[2] => apellido_1
[3] => apellido_2
[4] => direccion
[5] => localidad
[6] => codigo_postal
[7] => provincia
[8] => nif_pasaport
[9] => telefono_1
[10] => movil
[11] => email
[12] => fecha_nacimiento
[13] => codigo_country
[14] => pais
)
[rows] => Array
(
[0] => Array
(
[numero] => 1
[nombre_pila] => To?o d'angelo
[apellido_1] => Iba?ez C?rdenas
[apellido_2] => Fuentes
[direccion] => C/ Playa de la Jara, n? 200 La carlota
[localidad] => La Algaba
[codigo_postal] => 8396
[provincia] => La Coru?a
[nif_pasaport] => 28.612.567-S
[telefono_1] => 987654123
[movil] => 690864186
[email] => jorge43722@gmail.com
[fecha_nacimiento] => 4/3/72
[codigo_country] => 196
[pais] => Espa?a
)
)
[delimiter] => ,
[closing] => "
)
Как вы увидите, символ " ?» и должно получиться:
[nombre_pila] => Toño d'angelo
[apellido_1] = > Ibañez Cárdenas
[direccion] => C/ Playa de la Jara, nº 200 La carlota
[provincia] => La Coruña
[pais] => España
Я использую следующее:
<code>Route::get('clients', function(){
header('Content-Type: text/html; charset=UTF-8');
$path_to_file = path('public') . '/files/clientes.csv';
$csv = CSV::from_file($path_to_file, ';');
echo "<pre>".print_r($csv,true).'
'; });
Где метод from_file выглядит следующим образом:
public static function from_file($path, $delimiter = ',', $enclosure = '"')
{
// fix mac csv issue
ini_set("auto_detect_line_endings", true);
// open file...
if ($input = @fopen($path, 'r'))
{
$columns = array();
$rows = array();
// spin rows...
$row = 1;
while ($fields = fgetcsv($input, 0, $delimiter, $enclosure))
{
// if first row...
if ($row === 1)
{
// spin headers...
$count = 0;
foreach ($fields as $field)
{
// get column name
$name = $field;
// check exists...
if (in_array($name, $columns))
{
$count++;
$name .= '_'.$count;
}
// save column name
$columns[] = $name;
}
}
// if NOT first row...
else
{
// combine
$temp = array_combine($columns, $fields);
// if no error...
if ($temp)
{
// add to rows
$rows[] = $temp;
}
else
{
// do not add row
#die(var_dump($fields));
}
}
$row++;
}
// close file
fclose($input);
// build object
$class = __CLASS__;
$object = new $class;
$object->columns = $columns;
$object->rows = $rows;
return $object;
}
else
{
return false;
}
}
Я сделал все, но я не понимаю, надеюсь, вы можете помочь мне, спасибо.