English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類
0

^^
各位大大~~問題如下
我先用javascript的escape函式將文字編碼~
而現在在第2頁想用php解碼,請問要怎麼樣才能辦到呢???
因為php和js的編碼結果是不一樣的~~~
但我用想使用php去解碼,希望高手指教

theword="+escape(theword));

我打了"我"字顯示出 %u6211 編碼
然後我要用php解碼,然後又變回"我"字
請問有方法嗎?
謝謝

2007-02-09 09:53:01 · 2 個解答 · 發問者 安欣璇華 2 in 電腦與網際網路 程式設計

請 zanhsieh2001 大大
可以有句體的回答
例如 語法 和 範例
比較快點解決問題

謝謝 如果能解決 我的問題 15點 我一定給
但希望 能詳細解答
謝謝

2007-02-13 07:11:39 · update #1

因為 ajax把輸入的值傳給php時都要進行escape
所以我用 下列程式 進行轉換

2007-02-14 10:15:09 · update #2

function utf8RawUrlDecode ($source) {
$decodedStr = "";
$pos = 0;
$len = strlen ($source);

2007-02-14 10:17:09 · update #3

while ($pos < $len) {
$charAt = substr ($source, $pos, 1);
if ($charAt == '%') {
$pos ;
$charAt = substr ($source, $pos, 1);
if ($charAt == 'u') {

2007-02-14 10:17:43 · update #4

// we got a unicode character
$pos ;
$unicodeHexVal = substr ($source, $pos, 4);
$unicode = hexdec ($unicodeHexVal);

2007-02-14 10:19:38 · update #5

$entity = "&#". $unicode . ';';
$decodedStr .= utf8_encode ($entity);
$pos = 4;

2007-02-14 10:19:57 · update #6

}
else {
// we have an escaped ascii character
$hexVal = substr ($source, $pos, 2);
$decodedStr .= chr (hexdec ($hexVal));

2007-02-14 10:20:23 · update #7

$pos = 2;
}
} else {
$decodedStr .= $charAt;
$pos ;

2007-02-14 10:20:50 · update #8

}
}
return $decodedStr;
}
?>

2007-02-14 10:21:11 · update #9

然後 再用 下列程式
$fp= fopen ("$mypath/$d_path/$cook_no/mydiary/$diary_no.txt" ,"a") ; //再建立自我介紹檔案
mymin.txt// fputs($fp, utf8RawUrlDecode ($theword)) ; fclose($fp);
?>

2007-02-14 10:22:45 · update #10

可是 打開 文字檔
打該 是這種

"我" 編碼

要如何轉回來正常的中文

謝謝

2007-02-14 10:23:05 · update #11

是否可以逐字檢查每一個字~
然後把有utf8碼的轉成&#nnnn這類編碼
而中文則不轉成&#nnnn這類~

2007-02-14 10:32:34 · update #12

2 個解答

有啊,htmlentities 可以符合你的要求。

來自官方的語法參考:

http://www.php.net/manual/en/function.htmlentities.php

2007-02-15 02:30:50 補充:
我還在找資料中。等等啊。

2007-02-15 02:38:15 補充:
你的那個文字檔如果在"我"後面加個";",加個



2007-02-15 02:38:25 補充:

檔頭以及html檔尾,IE或者firefox開來看就是中文。

2007-02-12 23:08:47 · answer #1 · answered by mh 7 · 0 0

把 html unicode notation 改回中文
1. 如果是指 big5 碼的話, 可使用下列網頁中的 u2utf82gb()
http://tech.anxi365.net/html/website/PHPjiaocheng/2006/0428/2187.html
把 gb2312 改為 big5 即可.
2. 如果只是做 js 的 unsecape 的話, 直接 return $str

2007-02-18 19:34:52 · answer #2 · answered by Chiu 4 · 0 0

fedest.com, questions and answers