php+mysql乱码问题求指导
数据库环境:redhat AS5+mysql5.0.4 UTF8编码
WEB环境:win2003 nginx1.5 php5.2.17 页面时UTF8编码。
其他说明:一个应用程序(购买的)使用mysql5.0.4数据库,我现在用php写了一个网站用来显示数据库中的部分内容进行展示,其中一个字段是存储姓名的,,在页面上显示的时候是乱码,我用mysql管理工具查看的时候也是同样的乱码,以前我写这个网站的时候使用的是ASP.NET(C#)写的,当时是尝试了各种编码,最后确定ISO8599-1编码转UTF8可以正常显示。当时处理乱码的方法是用个函数转码,读取是转换到UTF8,现在PHP使用不熟,一直没找到解决办法,求指导
下面是我当初解决这个乱码问题的代码(C#),不知道怎么修改成PHP的,
//读取是进行转换 private string ISO8599ToUTF8(string str) { Encoding UTF_8 = System.Text.Encoding.GetEncoding("utf-8"); Encoding ISO = System.Text.Encoding.GetEncoding("iso8859-1"); byte[] iso = ISO.GetBytes(str); return UTF_8.GetString(iso); }
回复讨论(解决方案)
你先从数据库取出乱码字段的字段内容,比如保存到 $s
然后 echo base64_encode($s); 贴出结果
谢谢你的回复,你看显示的就是这个效果“ÕÛÒíÌìʹ”,肯定不会base64编码了
假设你的乱码内容在 $s 中,那么
echo base64_encode($s);
贴出结果
* 是这个吧?
你贴出的“乱码”的十六进制内码为 efbbbfc395c39bc392c3adc38cc3acc38ac2b9
其中 efbbbf 是 utf-8 字符集的 BOM 头
显然你在读取数据前执行了 set names utf8 指令
而 c395c39bc392c3adc38cc3acc38ac2b9 是 latin1 字符转换成 utf-8 编码的结果
latin1 (通用欧洲字符集1)就是 iso 8859-1
经过 iconv('utf-8', 'latin1', substr($s,3));
转码后得到的就是 * 其十六进制内码为 d5dbd2edcceccab9
显然是一个 gbk 编码的串
斑竹威武,谢谢

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Alipay PHP...

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Article discusses late static binding (LSB) in PHP, introduced in PHP 5.3, allowing runtime resolution of static method calls for more flexible inheritance.Main issue: LSB vs. traditional polymorphism; LSB's practical applications and potential perfo

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...
