一般在php中會(huì)使用fopen進(jìn)行生成文件,但是當(dāng)文件名存在中文時(shí)保存文件會(huì)出現(xiàn)中文亂碼。
源代碼:
?php
$fileName = __DIR__ . '\測(cè)試.txt';
$fp = fopen($fileName, 'w');
fwrite($fp, '這是中文內(nèi)容');
fclose($fp);
echo $fileName.'br>';
if(file_exists($fileName)){
echo 'hhhhh';
}
?>
結(jié)果:

文件名是亂碼
解決:
對(duì)文件名進(jìn)行編碼。
?php
$fileName = __DIR__ . '\測(cè)試.txt';
$fileName = iconv('UTF-8', 'GBK', $fileName);
$fp = fopen($fileName, 'w');
fwrite($fp, '這是中文內(nèi)容');
fclose($fp);
echo $fileName.'br>';
if(file_exists($fileName)){
echo 'hhhhh';
}
?>
結(jié)果:

文件名非亂碼
但是看頁(yè)面輸出的文件名:

輸出的文件名為亂碼
所以當(dāng)要在頁(yè)面上輸出文件名又需要保存文件時(shí),可以先保存原先的中文文件名,再通過(guò)文件名編碼進(jìn)行創(chuàng)建文件。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- PHP讀取文件,解決中文亂碼UTF-8的方法分析
- 解決zabbix監(jiān)控因php問(wèn)題導(dǎo)致圖形界面中文亂碼方法
- php輸出文字亂碼的解決方法
- php寫(xiě)入mysql中文亂碼的實(shí)例解決方法
- php寫(xiě)入txt亂碼的解決方法
- 解決php寫(xiě)入數(shù)據(jù)庫(kù)亂碼的問(wèn)題
- PHP微信發(fā)送推送消息亂碼的解決方法
- PHP解決輸出中文亂碼問(wèn)題講解