2011-10-27 13 views
14

Estoy trabajando con un archivo CSV que se exporta desde Excel.¿Cómo eliminar todas las apariciones de c2a0 en una cadena con PHP?

Tengo una columna que contiene un valor de 1 234,00. Necesito quitar todos los espacios en blanco de este tipo de columnas con PHP e intenté hacerlo con preg_replace("/\s*/","",$column) y con str_replace(" ","",$column). Estaba casi listo para perderlo, así que eché un vistazo al archivo csv con un editor HEX y me di cuenta de que este espacio constaba de dos valores hexadecimales, C2 y A0, que parece ser un espacio UTF-8 sin interrupciones.

Pero yo chupo con cosas de codificación y todavía estoy confundido en encontrar una manera de eliminarlos. ¿Algunas ideas?

Respuesta

39
$column = str_replace("\xc2\xa0", '', $column); 
+2

Sip. ¡Un millón de gracias! :) – budwiser

10

Es posible utilizar trim

trim($data['value'], " \t\n\r\0\x0B\xc2\xa0") 

Dónde \t\n\r\0\x0B es defualt máscara, \xc2\xa0 necesita añadir

+1

[trim] (http://php.net/manual/en/function.trim.php) también incluye espacio en la máscara predeterminada - '" \ t \ n \ r \ 0 \ x0B \ xc2 \ xa0 " '. – galva

+0

@galva, gracias! –

Cuestiones relacionadas