明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

用PHP將數(shù)據(jù)導(dǎo)入到Foxmail

[摘要]最近小陽做了一個PHP同學(xué)錄,同學(xué)們自己在那里添加或修改姓名、郵箱、OICQ等信息,并保存在mySQL數(shù)據(jù)庫里。某日小陽突然想到,如果能用PHP生成一個文件,供同學(xué)們下載并把這些資料導(dǎo)入他們的Foxmail地址簿中,那該多好。  ≌f干就干,很快小陽便將這功能推出來了。那是如何實(shí)現(xiàn)的呢?這里僅以導(dǎo)...

  最近小陽做了一個PHP同學(xué)錄,同學(xué)們自己在那里添加或修改姓名、郵箱、OICQ等信息,并保存在mySQL數(shù)據(jù)庫里。某日小陽突然想到,如果能用PHP生成一個文件,供同學(xué)們下載并把這些資料導(dǎo)入他們的Foxmail地址簿中,那該多好!

  說干就干,很快小陽便將這功能推出來了。那是如何實(shí)現(xiàn)的呢?這里僅以導(dǎo)出姓名、郵箱和OICQ三項(xiàng)予以說明。

  要資料可以導(dǎo)入Foxmail地址簿,當(dāng)然要先了解一下導(dǎo)入Foxmail地址簿的文件內(nèi)容和格式。打開Foxmail4.2一個帳戶的地址簿,在其菜單欄“工具”-“導(dǎo)入”中可以看到,F(xiàn)oxmail支持兩種外部文件的導(dǎo)入:“CSV文件”和“Wab文件”。我們選擇生成CSV文件。那么可以導(dǎo)入Foxmail的CSV文件的內(nèi)容和格式如何呢?讓我們先從Foxmail導(dǎo)出一個CSV文件看一下。在Foxmail地址簿中選擇一個記錄不為空的文件夾,執(zhí)行“工具”-“導(dǎo)出”- “文本文件”,保存文件名為“TEMP.CSV”, 在“下一步”的“請選擇輸出字段”中選擇“姓名”、“電子郵箱地址”和“OICQ”,點(diǎn)擊“完成”后便在指定路徑生成了“TEMP.CSV”文件了。如果你裝了微軟office系列,會發(fā)現(xiàn)這是一個用EXCEL默認(rèn)打開的文件,實(shí)際上它是EXCEL的逗號分隔值文件,雙擊打開后,其界面如圖所示。

  

  我們在這種情況下還是無法知道它的寫入格式的。將“TEMP.CSV”文件改為用記事本打開,便可以發(fā)現(xiàn)它的格式非常簡單:如圖,文件第一行是Foxmail地址簿的字段,其它行是字段對應(yīng)的值,各字段和值用英文逗號分隔。所以我們在PHP中按這種格式生成CSV文件,別人就可以下載并導(dǎo)入他們的Foxmail中了!

  

  不過還有一個問題需要解決,那就是既然文件中以逗號作為分隔值,如果數(shù)據(jù)庫記錄中有英文逗號(注:以下符號若無特別說明皆指英文符號)怎么辦?當(dāng)然你可以先將數(shù)據(jù)中的逗號替換為中文逗號,但其實(shí)還有一個方法,那就是如果CSV文件相應(yīng)的字段兩端加上雙引號(“即" "”)作分隔值,其間的英文逗號不作為分隔值,且字段中連續(xù)兩個英文雙引號(即“"”)也只作為一個顯示,而不作為分隔值。

  有了這些認(rèn)識,我們就可以編寫導(dǎo)出CSV文件的PHP文件了:

  

  在服務(wù)器上運(yùn)行上述PHP文件,下載回來的“tofoxmail.csv”文件用記事本打開如圖所示。

  在Foxmail地址簿中點(diǎn)擊“工具”-“導(dǎo)入”-“CSV文件”……,數(shù)據(jù)庫中一大堆的資料一下子就全被導(dǎo)入了,這個主意還不錯吧!

  

  (以上程序在Apache+PHP4+mySQL和IIS+PHP4+mySQL中皆測試通過。)