0

我的 MySQL 有问题,

当我保存对路线名称有压力的路线时,它不会在地图上加载标记,我使用的是 utf8

例如,如果我写:“á、â、ã、ó 等……”我的标记会停止出现在地图上。

PHP解决方案:(唯一有效的方法是使用str_replace

function parseToXML($htmlStr) 
{ 
$xmlStr=str_replace('<','&lt;',$htmlStr); 
$xmlStr=str_replace('>','&gt;',$xmlStr); 
$xmlStr=str_replace('"','&quot;',$xmlStr); 
$xmlStr=str_replace("'",'&#39;',$xmlStr); 
$xmlStr=str_replace("&",'&amp;',$xmlStr); 
$xmlStr = str_replace( 'À', '&#192;', $xmlStr ); 
$xmlStr = str_replace( 'Á', '&#193;', $xmlStr ); 
$xmlStr = str_replace( 'Â', '&#194;', $xmlStr ); 
$xmlStr = str_replace( 'Ã', '&#195;', $xmlStr ); 
$xmlStr = str_replace( 'Ä', '&#196;', $xmlStr ); 
$xmlStr = str_replace( 'Å', '&#197;', $xmlStr ); 
$xmlStr = str_replace( 'Æ', '&#198;', $xmlStr ); 
$xmlStr = str_replace( 'Ç', '&#199;', $xmlStr ); 
$xmlStr = str_replace( 'È', '&#200;', $xmlStr ); 
$xmlStr = str_replace( 'É', '&#201;', $xmlStr ); 
$xmlStr = str_replace( 'Ê', '&#202;', $xmlStr ); 
$xmlStr = str_replace( 'Ë', '&#203;', $xmlStr ); 
$xmlStr = str_replace( 'Ì', '&#204;', $xmlStr ); 
$xmlStr = str_replace( 'Í', '&#205;', $xmlStr ); 
$xmlStr = str_replace( 'Î', '&#206;', $xmlStr ); 
$xmlStr = str_replace( 'Ï', '&#207;', $xmlStr ); 
$xmlStr = str_replace( 'Ð', '&#208;', $xmlStr ); 
$xmlStr = str_replace( 'Ñ', '&#209;', $xmlStr ); 
$xmlStr = str_replace( 'Ò', '&#210;', $xmlStr ); 
$xmlStr = str_replace( 'Ó', '&#211;', $xmlStr ); 
$xmlStr = str_replace( 'Ô', '&#212;', $xmlStr ); 
$xmlStr = str_replace( 'Õ', '&#213;', $xmlStr ); 
$xmlStr = str_replace( 'Ö', '&#214;', $xmlStr ); 
$xmlStr = str_replace( '×', '&#215;', $xmlStr );  // Yeah, I know.  But otherwise the gap is confusing.  --Kris 
$xmlStr = str_replace( 'Ø', '&#216;', $xmlStr ); 
$xmlStr = str_replace( 'Ù', '&#217;', $xmlStr ); 
$xmlStr = str_replace( 'Ú', '&#218;', $xmlStr ); 
$xmlStr = str_replace( 'Û', '&#219;', $xmlStr ); 
$xmlStr = str_replace( 'Ü', '&#220;', $xmlStr ); 
$xmlStr = str_replace( 'Ý', '&#221;', $xmlStr ); 
$xmlStr = str_replace( 'Þ', '&#222;', $xmlStr ); 
$xmlStr = str_replace( 'ß', '&#223;', $xmlStr ); 
$xmlStr = str_replace( 'à', '&#224;', $xmlStr ); 
$xmlStr = str_replace( 'á', '&#225;', $xmlStr ); 
$xmlStr = str_replace( 'â', '&#226;', $xmlStr ); 
$xmlStr = str_replace( 'ã', '&#227;', $xmlStr ); 
$xmlStr = str_replace( 'ä', '&#228;', $xmlStr ); 
$xmlStr = str_replace( 'å', '&#229;', $xmlStr ); 
$xmlStr = str_replace( 'æ', '&#230;', $xmlStr ); 
$xmlStr = str_replace( 'ç', '&#231;', $xmlStr ); 
$xmlStr = str_replace( 'è', '&#232;', $xmlStr ); 
$xmlStr = str_replace( 'é', '&#233;', $xmlStr ); 
$xmlStr = str_replace( 'ê', '&#234;', $xmlStr ); 
$xmlStr = str_replace( 'ë', '&#235;', $xmlStr ); 
$xmlStr = str_replace( 'ì', '&#236;', $xmlStr ); 
$xmlStr = str_replace( 'í', '&#237;', $xmlStr ); 
$xmlStr = str_replace( 'î', '&#238;', $xmlStr ); 
$xmlStr = str_replace( 'ï', '&#239;', $xmlStr ); 
$xmlStr = str_replace( 'ð', '&#240;', $xmlStr ); 
$xmlStr = str_replace( 'ñ', '&#241;', $xmlStr ); 
$xmlStr = str_replace( 'ò', '&#242;', $xmlStr ); 
$xmlStr = str_replace( 'ó', '&#243;', $xmlStr ); 
$xmlStr = str_replace( 'ô', '&#244;', $xmlStr ); 
$xmlStr = str_replace( 'õ', '&#245;', $xmlStr ); 
$xmlStr = str_replace( 'ö', '&#246;', $xmlStr ); 
$xmlStr = str_replace( '÷', '&#247;', $xmlStr );
$xmlStr = str_replace( 'ø', '&#248;', $xmlStr ); 
$xmlStr = str_replace( 'ù', '&#249;', $xmlStr ); 
$xmlStr = str_replace( 'ú', '&#250;', $xmlStr ); 
$xmlStr = str_replace( 'û', '&#251;', $xmlStr ); 
$xmlStr = str_replace( 'ü', '&#252;', $xmlStr ); 
$xmlStr = str_replace( 'ý', '&#253;', $xmlStr ); 
$xmlStr = str_replace( 'þ', '&#254;', $xmlStr ); 
$xmlStr = str_replace( 'ÿ', '&#255;', $xmlStr ); 
return $xmlStr; 
} 

在 MySQL 上出现带有重音的名称,问题是当我加载它时,问题出在 uft8 还是 PHP 上?

在此处输入图像描述

4

0 回答 0