tengo una BD Mysql en local con codificación utf8.
Luego tengo un fichero txt que el contenido es como este, donde hay acentos Ñ y otros caracteres.
9950543SÃO MATEUS MAD PT0830
Mi intención es leer registro a registro este fichero de 50.000 líneas e insertarlas en la tabla de MySQL.
Para ello he escrito un command en laravel que lee el fichero, llama al modelo PostalCode e intento insertar los datos.
public function __construct()
{
parent::__construct();
$content = fopen(storage_path("app\fichero_codigos_postales.TXT"),'r');
while(!feof($content)){
$line=utf8_decode(fgets($content));
$cp = substr($line,0,7);
$localidad = substr($line,8,24);
$pais = substr($line,32,2);
$param = substr($line,34,4);
try {
$item = PostaslCode::create([
'postal_code' => $cp,
'town' => $localidad,
'country' => $pais,
'extra_param' => $param
]);
}
catch (\Exception $exception)
{
var_dump($exception->getMessage());
dd($exception);
}
}
}
El commmand me funciona, pero en MySQL veo los caracteres como acentos o Ñ como "?"