网页乱码一直是网络编程高手都头痛的问题,我是一个PHP Web编程的初学者,学习当中也遇到了这个问题,查找了相关的资源,总结如下:
一般的中文编码:gb2312,gbk(前者的一种扩展),这两种编码缺乏国际通用性;UTF-8为国际标准编码,一般网页编码使用该编码方式;
出现乱码大部分是由于编码方式的不一致导致的,其中主要有四个地方不一致就可能存在这个可能:
1、页面文件的编码方式(.html,.php等)
2、 html.head中指定浏览器的编码方式
3、MySql数据库传输的编码方式
4、Apache字符集
这四个的编码一般需要统一起来,统一为UTF-8更为合适。以下四点应该注意:
1、PlusEdit这种编辑会识别文件编码,打开并保存后编码方式保持不变 ;而像visual studio 2005、Zend Studio等开发工具会以工具首选项中的字符集打开并保存,可能改变原来的编码方式。
可能原来是utf-8的,zend studio ->工具(首选项编码为gb2312),打开并保存就变成了gb2312可能会出现乱码;
2、这句话可以强制要求浏览器以utf-8编码方式来查看页面,但有一点需要注意,可能Apache的字符集为非UTF-8,例如GB2312,此时浏览器会优先以服务器(GB2312)的字符集编码打开,又可能导致乱码。
所以一般可以这么处理:关闭服务器Apache的字符集AddDefaultCharset off 此时浏览会以页面Head中字符集打开。
3、PHP一般都与Mysql数据库交互,两者进行数据通信时,也有一个编码问题,不管增还是查,必须指定通信编码方式(一般与Head中编码方式UTF-8一致,否则取出来的数据是以非UTF-8编码的,到页面上显示仍旧为乱码;把UTF-8编码的字符通过非UTF-8的通信方式传输到数据库同样会失败,我遇到了这个Insert失败问题,希望大家不要重蹈覆辙,O(∩_∩)O~) 指定通信方式方法:mysql_query('set names utf8'),注意不是utf-8;
4、一般跟数据库建库时的编码没有关系,修改后sql语句执行会有问题,比如前台可视化工具操作删除数据时会报字符集不符合的错误,也不需要修改my.ini文件中的编码方式,修改后可能导致Mysql无法启动,报1065错误 。
只要命令行执行mysql客户机程序时增与查没有出现乱码,数据库的编码方式应该是没有问题的,重点需要检查的是否是上面三个导致的乱码。
推荐视频教程:PHP视频教程
以上是php页面浏览出现文字乱码的详细内容。更多信息请关注PHP中文网其他相关文章!

本文比较了酸和基本数据库模型,详细介绍了它们的特征和适当的用例。酸优先确定数据完整性和一致性,适合财务和电子商务应用程序,而基础则侧重于可用性和

本文讨论了确保PHP文件上传的确保,以防止诸如代码注入之类的漏洞。它专注于文件类型验证,安全存储和错误处理以增强应用程序安全性。

本文讨论了在PHP中实施API速率限制的策略,包括诸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之类的库。它还涵盖监视,动态调整速率限制和手

本文讨论了使用password_hash和pyspasswify在PHP中使用密码的好处。主要论点是,这些功能通过自动盐,强大的哈希算法和SECH来增强密码保护

本文讨论了OWASP在PHP和缓解策略中的十大漏洞。关键问题包括注射,验证损坏和XSS,并提供用于监视和保护PHP应用程序的推荐工具。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Atom编辑器mac版下载
最流行的的开源编辑器

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。