PHP 关于UTF-8中文乱码解决办法
PHP 关于UTF-8中文乱码解决方法
1。用表单进行提交,post或是get方法都可以。
用这种方法进行”人”字提交时,如果你用的是get方法,你会发现。ie地址栏的url上是找不到”人”字的,看到的是”%4e%ba%ba”,原因在于,ie的表单进行提交时,被自动进行了。urlencode编码,而在搜索页里接收变量时,php自动的把他给decode了。所以,你得到的就是utf-8的”人”字。并不会出现任何问题,当然了,前提是你表单所在的页面是utf-8的编码。
?
2。文字链接进行提交,utf-8编码的页面上有一个文字链,形如xxxx,当你点击提交后,你会看到,在ie的地址栏里,你可以看到那个”人”字,在页面里你接收到后进行输出,发现他会变成”浜”这个字,问题出来了,utf-8的页面,提交后,输出页面也是utf-8的编码,可就是出错了。注意,这并不是你环境设置的问题,网上好多介绍说把php.ini里的default_charset这一样打开并改成utf-8可以解决,这是不准确的说法,继续我们的问题,这次不输出这个字,用urlencode进行编码并输出编码,看到结果变成”%4e%ba”了,少了高位。即然到这里时少了高位,那么,在这个页面里,是无法做任何处理了。ie的问题就在这里了。utf-8的编码是每个汉字占3位字节,而在你用文字链的方式进行提交时,如果你是直接写的汉字,其实,这个汉字确确实实在提交时是utf-8的编码,但,因为ie对html解析的问题,他把奇数的汉字,或称之为奇数的全角字符自为主张的截掉了高位,按两字节进行处理。这样也就出了我们现在的问题了。解决方法:把你提交的关键字,写成偶数个,就不会再出现这些问题了,如果真的只有奇数个,那么,在提交交,就对其进行urlencode编码,或是在关键字的前边或是后边加入一个全角的空格,这样,接收页面就可以得到完整的字符串了,再做处理截掉空格就行了。
?
3。ie地址栏里直接手动写入中文进行页面打开,这种方式多见于分页查询时,有网页基础知识的用户,为了省事,会在一个关键字查询中,直接修改url地址,进行另一个关键字的查询。这时,用户在地址栏里输入的汉字,是gb2312的,而不会因为你的页面是utf-8面自动转换,如果你有兴趣,可以试一下,urlencode看一下。这时,在你接收到关键字后,用iconv进行转换成utf-8就可以查询了。

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

AI Hentai Generator
Generate AI Hentai for free.

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



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

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,

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

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.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
