首頁 頭條 新手學php為什麼會出現中文亂碼?

新手學php為什麼會出現中文亂碼?

Nov 03, 2017 pm 04:29 PM
php 為什麼 亂碼

為什麼會出現中文亂碼?

很多新手朋友學習PHP的時候,發現程式中的中文在輸出的時候會出現亂碼的問題,那麼為什麼會出現這種亂碼的情況呢?一般來說,亂碼的出現有2種原因,一種是由於編碼(charset) 設定錯誤,導致瀏覽器以錯誤的編碼來解析,從而出現了滿屏亂七八糟的“天書”,第二種就是文件被以錯誤的編碼打開,然後儲存,例如一個文字檔案原先是GB2312 編碼的,卻以UTF-8 編碼打開再儲存,就會出現亂碼的問題。這篇文章,就帶大家了解一下,怎麼解決php中亂碼的問題。

我們將亂碼情況分為以下幾種,有需要的可以對照下面的幾種情況有針對性的解決亂碼問題

第一種:解決HTML中中文亂碼問題方法

如果你的HTML 檔案檔案出現了亂碼問題,那麼你可以在head 標籤裡面加入UTF8編碼(國際化編碼): UTF-8 是沒有國家的編碼,也就是獨立於任何一種語言,任何語言都可以使用的。

 

##範例

新手學php為什麼會出現中文亂碼?

#我們現在的HTML5 文件,設定編碼更為簡單,像下面這樣:

新手學php為什麼會出現中文亂碼?

#第二種、HTML和PHP混合的頁面解決方案

如何是HTML 和PHP 混編,除了按照第一個方法所說的操作之外,還需要在PHP 檔案的最上面加入這句程式碼:

  

第三種、純PHP頁面的中文亂碼問題(資料是靜態的)

如果你的PHP 頁面出現了亂碼,只需要在頁面的開始處加入下面程式碼就可以了。

 

第四種、PHP+Mysql中文亂碼問題

這個除了依照第三種所說的操作之外,還要在你的資料查詢/修改/增加之前加入資料庫編碼。而且,值得注意的是,這裡的UTF8和之前的不一樣,中間是沒有橫線的。

 

#如何你使用的MySQL 版本在4.1 或修改,增加?> 

#如何你使用的MySQL 版本在4.1 或修改,增加?> 

新手學php為什麼會出現中文亂碼?#如何你使用的MySQL 版本在4.1 或更高版本,可以在連結資料庫操作後,設定一個字元編碼,像下面​​這樣:

#UTF-8 編碼只是其中一種編碼,如果不想使用utf- 8 編碼,也可以使用其他編碼,只要將UTF-8 換成你想使用的編碼就可以,目前中文網站開發中主要用的是GB2312 和UTF-8 兩種編碼。

有一點要注意的是在需要做資料庫操作的php程式前加的mysql_query (" set names '編碼'");編碼,一定要和php 編碼一致,如果php 編碼是gb2312 那mysql編碼就是gb2312 ,如果是utf-8 那mysql 編碼就是utf8 ,這樣插入或檢索資料時就不會出現亂碼了


 

#########
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1677
14
CakePHP 教程
1431
52
Laravel 教程
1334
25
PHP教程
1280
29
C# 教程
1257
24
PHP性能優化策略。 PHP性能優化策略。 May 13, 2025 am 12:06 AM

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)啟用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替換loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

PHP性能優化清單:立即提高速度 PHP性能優化清單:立即提高速度 May 12, 2025 am 12:07 AM

到ImprovephPapplicationspeed,關注台詞:1)啟用opcodeCachingwithapCutoredUcescriptexecutiontime.2)實現databasequerycachingingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandreduceconnection.4 limitesclection.4.4

PHP電子郵件驗證:確保正確發送電子郵件 PHP電子郵件驗證:確保正確發送電子郵件 May 13, 2025 am 12:06 AM

phpemailvalidation invoLvesthreesteps:1)格式化進行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)

PHP依賴注入容器:快速啟動 PHP依賴注入容器:快速啟動 May 13, 2025 am 12:11 AM

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增強codemodocultion,可驗證性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

PHP電子郵件:分步發送指南 PHP電子郵件:分步發送指南 May 09, 2025 am 12:14 AM

phpisusedforsendendemailsduetoitsignegrationwithservermailservicesand andexternalsmtpproviders,自動化intifications andMarketingCampaigns.1)設置設置yourphpenvenvironnvironnvironmentwithaweberswithawebserverserververandphp,確保themailfunctionisenabled.2)useabasicscruct

PHP依賴注入:提高代碼可檢驗性 PHP依賴注入:提高代碼可檢驗性 May 12, 2025 am 12:03 AM

依赖注入(DI)通过显式传递依赖关系,显著提升了PHP代码的可测试性。1)DI解耦类与具体实现,使测试和维护更灵活。2)三种类型中,构造函数注入明确表达依赖,保持状态一致。3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

簡單指南:帶有PHP腳本的電子郵件發送 簡單指南:帶有PHP腳本的電子郵件發送 May 12, 2025 am 12:02 AM

phpisusedforsenderemailsduetoitsbuilt-inmail()函數andsupportivelibrariesLikePhpMailerAndSwiftMailer.1)usethemail()functionForbasiceMails,butithasimails.2)butithasimail.2)

最新的Laravel版本:DIFES DISCON 最新的Laravel版本:DIFES DISCON May 12, 2025 am 12:15 AM

Laravel10IntroducessEveralKeyFeatUrestHatenHanceWebDevelopment.1)LazyCollectionsAllyCollefficeProcesingOflargeFlargedAtasetSwithSwithOutloadingAllRecordSintomeMemory.2)the Make:Model Model Moged-and-Mogration'ArtisanCommandSancancMommandSimplififieScreatingModeltigation.3)