預設情況下,php使用latin1字符集來生成html文件。但是如果字串是按utf-8編碼的則會出現問題:
1. strlen() 返回的是位元組數而不是字元數。
2.字元的大小寫轉換可能出現問題
3.字串排序可能不正確
4.stripsplashes(),substr(), split()會出現問題
解決方案: php提供的utf8_encode()和utf8_decode()函式可以完成utf8和latin1之間的轉換
另外,如果php在編譯時帶有iconv擴充套件模組(unix\linux)或者擴充套件模組被啟用(windows:php.ini中加上extension=php_iconv.dll);
就可以使用iconv_***()函式。
mbstring擴充套件模組頁提供了更多的輔助陣列
大多數瀏覽器根據http協議裡的字符集設定資訊而忽略標籤。
http首部的文件型別和字符集資訊**如下(按優先順序排序)
1.header('content-type:text/html;charset=''');
2,php.ini預設設定
3.apache web目錄中的.htaccess檔案
4.apache 預設配置http.conf
mysql 與unicode
mysql資料表中的字符集在create命令建立他們時就確定了
set namespace utf8告訴mysql,隨後的sql語句採用的是utf8編碼,
set names只對mysql與php之間的通訊有影響。如果字串中有新字符集中無法表示的字元,將會用問號替代。
關於面試的一些問題
面試過程中,面試官會向應聘者發問,而應聘者的回答將成為面試官考慮是否接受他的重要依據。對應聘者而言,了解這些問題背後的 貓膩 至關重要。本文對面試中經常出現的一些典型問題進行了整理,並給出相應的回答思路和參 讀者無需過分關注分析的細節,關鍵是要從這些分析中 悟 出面試的規律及回答問題的思維方式,達到...
關於Labview的一些問題
第一章 虛擬儀器及 labview入門 1 虛擬儀器概述 虛擬儀器 virtual instrumention 是基於計算機的儀器。計算機和儀器的密切結合是目前儀器發展的乙個重要方向。粗略地說這種結合有兩種方式,一種是將計算機裝入儀器,其典型的例子就是所謂智慧型化的儀器。隨著計算機功能的日益強大以及...
關於DropDownList的一些問題
dropdownlist選擇後提示不能在dropdownlist選擇多項 原因在於drop.selected true 用的是item的引用,無法覆蓋上次操作 有2種方法 一種是直接drop.selectvalue value 選定指定資料 另一種是在操作前 呼叫clearselection 方法清...