我正在创建一个文件阅读器,我需要设计它的方式,使西班牙语字母将更改为英语,否则它将无法工作…
看起来很简单,但是这些字母就是不替换…
$header = $this->file->current();
// replace spanish characters with english
$spanishChars = array('ó', 'á', 'í', 'é', 'ú', 'ñ', 'Ó', 'Á', 'Í', 'É', 'Ú', 'Ñ');
$englishChars = array('o', 'a', 'i', 'e', 'u', 'n', 'O', 'A', 'I', 'E', 'U', 'N');
$headers = str_replace($spanishChars, $englishChars, $header);
echo var_dump($headers); die;
我得到的输出是相同的(字母没有被替换):
0 => string 'id,categ�ria,nombre,descripcion,PVP sin iva,PVD,stock,EAN13,estado,referencia,foto' (length=82)
任何想法吗?
编辑:因为西班牙字母被转换成?这可能就是它不能转换的原因吧?
because is I do:
$headers = iconv('UTF-8', 'ASCII//TRANSLIT//IGNORE', $header);
这完全删除了西班牙字母和
$headers = iconv('UTF-8', 'ASCII//TRANSLIT', $header);
表示iconv(): Detected an illegal character in input string
还有其他想法吗?
我使用的是我从这里得到的js脚本
非常全面你只需要西班牙语的