Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?

藏色散人
Lepaskan: 2023-03-17 15:20:02
asal
6764 orang telah melayarinya

Penyelesaian kepada kod kacau Cina dalam halaman web dw php: 1. Tetapkan pengekodan tajuk kepada UTF8 2. Apabila menggunakan Dreamweaver untuk mencipta fail php baharu, isytiharkan format utf melalui "" -8; 3. Tetapkan pengekodan sambungan MYSQL melalui "mysql_query("SET NAMA GBK");". ="utf-8">

Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?

Persekitaran pengendalian tutorial ini: sistem Windows 7, Dreamweaver versi 8, komputer Dell G3.

Apakah yang perlu saya lakukan jika halaman web dw php mempunyai aksara Cina yang kacau-bilau?

Bagaimana untuk menyelesaikan masalah aksara Cina yang kacau-bilau dalam antara muka pratonton Dreamweaver semasa menjalankan PHP fail

Melakukan pembangunan laman web memerlukan menangani masalah yang berbeza di banyak negara Bagi bahasa, kami sering menghadapi campuran bahasa Cina dan Inggeris. Apabila menggunakan Dreamweaver untuk mencipta dan menjalankan kod PHP, tetingkap pratonton Cina kadangkala memaparkan aksara bercelaru, tetapi bahasa Inggeris boleh dipaparkan secara normal.

Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?
Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?

Ini berlaku Sebab-sebab utama ialah:
1. Pengekodan fail: merujuk kepada pengekodan di mana fail halaman (.html, .php, dll.) itu sendiri disimpan. Notepad dan Dreamweaver akan mengenali pengekodan fail secara automatik apabila membuka halaman, jadi masalah akan berkurangan. Walau bagaimanapun, ZendStudio tidak mengecam pengekodan secara automatik Ia hanya akan membuka fail dengan pengekodan tertentu Jika anda secara tidak sengaja membuka fail dengan pengekodan yang salah semasa bekerja, aksara bercelaru akan muncul sebaik sahaja anda menyimpannya selepas membuat pengubahsuaian.

Penyelesaian: Tetapan halaman, tajuk/pengekodan, ditetapkan kepada UTF8

Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?


2. Pengekodan Pengisytiharan Halaman :
Tetapan pengekodan halaman HTML
Dalam kod HTML HEAD, ia boleh digunakan untuk memberitahu penyemak imbas pengekodan halaman web yang digunakan pada masa ini, XXX terutamanya menggunakan GB2312 dan UTF dalam pembangunan tapak web Cina -8 Dua pengekodan. Apabila menggunakan Dreamweaver untuk mencipta fail php baharu, anda perlu mengisytiharkan format utf-8:


Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?

3. Pengekodan sambungan pangkalan data: merujuk kepada pengekodan yang digunakan untuk menghantar data ke pangkalan data semasa menjalankan operasi pangkalan data yang perlu diperhatikan di sini adalah untuk tidak menghubungi pangkalan data itu sendiri kekeliruan pengekodan, contohnya, lalai dalaman MySQL adalah pengekodan latin1, yang bermaksud bahawa Mysql menyimpan data dalam pengekodan latin1, dan data yang dihantar ke Mysql dalam pengekodan lain akan ditukar kepada pengekodan latin1.

Mengetahui di mana pengekodan terlibat dalam pembangunan WEB, anda juga mengetahui sebab kod bercelaru: tiga tetapan pengekodan di atas tidak konsisten Memandangkan kebanyakan pelbagai pengekodan serasi dengan ASCII, simbol Bahasa Inggeris tidak akan muncul , dan aksara Cina kelihatan bercelaru.

Ralat dan penyelesaian biasa:

1. Pangkalan data menggunakan pengekodan UTF8 dan pengekodan pengisytiharan halaman ialah GB2312.

Pada masa ini, data SELECT secara langsung dalam skrip PHP anda perlu menggunakannya sebelum membuat pertanyaan: mysql_query("SET NAMA GBK"); untuk menetapkan pengekodan sambungan MYSQL untuk memastikan halaman tersebut pengekodan pengisytiharan adalah konsisten dengan tetapan di sini Pengekodan sambungan yang ditentukan adalah konsisten (GBK ialah lanjutan daripada GB2312). Jika halaman dikodkan UTF-8, anda boleh menggunakan: mysql_query("SET NAMES UTF8");
Tetapan pengekodan PHP
Tulis ayat pertama dalam kod php:

<?php
header("Content-type:text/html;charset=utf-8");
?>
Salin selepas log masuk

Ubah suai fail php.ini

Ubah suai "/etc/php5/apache2/php.ini" dan tukar

default_charset = "iso-8859-1"
Salin selepas log masuk

kepada default_charset = "utf - 8"

Tetapan pengekodan Mysql

<?php
mysql_query(&#39;SET NAMES UTF8&#39;);
?>
Salin selepas log masuk

Perhatikan bahawa ia adalah UTF8 dan bukannya UTF-8 yang biasa digunakan. Jika pengekodan pengisytiharan halaman adalah konsisten dengan pengekodan dalaman pangkalan data, anda tidak perlu menetapkan pengekodan sambungan.

Input dan output data MYSQL adalah lebih rumit daripada yang dinyatakan di atas. Terdapat 2 pengekodan lalai yang ditakrifkan dalam fail konfigurasi MYSQL my.ini, yang ditetapkan dengan aksara lalai dalam [klien] dan [mysqld] . Set aksara lalai digunakan untuk menetapkan pengekodan yang digunakan oleh sambungan klien dan pangkalan data secara dalaman secara lalai. Pengekodan yang kami nyatakan di atas sebenarnya ialah parameter baris arahan character_set_client apabila klien MYSQL bersambung ke pelayan, yang memberitahu pelayan MYSQL apakah pengekodan data klien yang diterima, bukannya menggunakan pengekodan lalai.

Berdasarkan langkah sebelumnya, anda juga perlu menambah pengekodan pangkalan data sebelum membuat pertanyaan/mengubah suai/menambah data anda.

2. Pengekodan pengisytiharan halaman tidak konsisten dengan pengekodan fail itu sendiri. Ini jarang berlaku kerana jika pengekodan tidak konsisten, apa yang dilihat oleh artis dalam penyemak imbas semasa mencipta halaman akan menjadi aksara yang kacau. Lebih kerap daripada tidak, ia disebabkan oleh membetulkan beberapa pepijat kecil selepas dikeluarkan, membuka halaman dalam pengekodan yang salah dan kemudian menyimpannya. Atau anda menggunakan beberapa perisian FTP untuk mengubah suai terus fail dalam talian, seperti CuteFTP Disebabkan konfigurasi pengekodan perisian yang salah, pengekodan yang salah ditukar.

3. Apabila menyewa hos maya, jika ketiga-tiga pengekodan di atas ditetapkan dengan betul, kadangkala masih terdapat aksara yang bercelaru. Sebagai contoh, jika halaman web dikodkan dalam GB2312, ia sentiasa dikenali sebagai UTF-8 apabila dibuka oleh penyemak imbas seperti IE , halaman dipaparkan seperti biasa. Sebabnya ialah pelayan Apache menetapkan pengekodan lalai global pelayan dan menambah AddDefaultCharset UTF-8 dalam httpd.conf. Pada masa ini, pelayan akan mula-mula menghantar pengepala HTTP ke penyemak imbas, dan keutamaannya lebih tinggi daripada pengekodan yang diisytiharkan dalam halaman Sememangnya, penyemak imbas akan mengecamnya secara salah. Terdapat dua penyelesaian. Pentadbir harus menambah AddDefaultCharset GB2312 pada fail konfigurasi mesin maya mereka sendiri untuk mengatasi konfigurasi global atau mengkonfigurasinya dalam .htaccess dalam direktori mereka sendiri.

Ringkasan: Untuk menyelesaikan kod PHP Cina yang kacau, penyelesaian terpantas ialah membuat pengekodan diisytiharkan pada halaman selaras dengan pengekodan dalaman pangkalan data Jika nombor halaman yang digunakan untuk halaman itu tidak konsisten dengan pengekodan dalaman daripada pangkalan data, tetapkan pengekodan sambungan, mysql_query ("SET NAMA XXX "); Seperti mysql_query('SET NAMA UTF8'); [2]

Akhirnya, bahasa Cina berjaya dipaparkan:

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <title>中文</title>
</head>

<body>

<h1>中文</h1>

<?php
echo "Hello World!";
?>
Salin selepas log masuk

Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apa yang perlu dilakukan jika halaman web dw php mempunyai aksara Cina yang kacau?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan