Maison  >  Article  >  développement back-end  >  echo出来的字符串中含有‘�’和'?',为什么?

echo出来的字符串中含有‘�’和'?',为什么?

WBOY
WBOYoriginal
2016-06-06 20:08:061350parcourir

比如:

<code>  header("Content-Type:text/html;charset=utf-8");
  $a='adminn流hn–h';
  echo $a;
  </code>

结果:adminn流hn–h
(正确)

如果,'adminn流hn–h'存在mysql的属性为utf8_general_ci的字段中,取出来echo的结果就是:
adminn?hn�h

请教

回复内容:

比如:

<code>  header("Content-Type:text/html;charset=utf-8");
  $a='adminn流hn–h';
  echo $a;
  </code>

结果:adminn流hn–h
(正确)

如果,'adminn流hn–h'存在mysql的属性为utf8_general_ci的字段中,取出来echo的结果就是:
adminn?hn�h

请教

就是字符编码的问题,header里面加上utf8就行了。你可以先看一下输出乱码的页面的编码是什么,如果不是utf8就加header 如果是,则看一下,你的php文件是什么编码。也要弄成utf8

文件编码也要保持和header一致就行了

如果排除了其它最有可能的,最后一个原因就是浏览器,换一个就正常了

把浏览器的编码调一下

用notepad++查看下文件编码是什么?确保跟header的编码保持一致就行了。

楼上说的很对

文件编码的问题,看下具体编码就行了

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn