用PHP将数据导入到Foxmail


Posted in PHP onOctober 09, 2006

最近小阳做了一个PHP同学录,同学们自己在那里添加或修改姓名、邮箱、OICQ等信息,并保存在mySQL数据库里。某日小阳突然想到,如果能用PHP生成一个文件,供同学们下载并把这些资料导入他们的Foxmail地址簿中,那该多好啊!

说干就干,很快小阳便将这功能推出来了。那是如何实现的呢?这里仅以导出姓名、邮箱和OICQ三项予以说明。

要资料可以导入Foxmail地址簿,当然要先了解一下导入Foxmail地址簿的文件内容和格式。打开Foxmail4.2一个帐户的地址簿,在其菜单栏“工具”-“导入”中可以看到,Foxmail支持两种外部文件的导入:“CSV文件”和“Wab文件”。我们选择生成CSV文件。那么可以导入Foxmail的CSV文件的内容和格式如何呢?让我们先从Foxmail导出一个CSV文件看一下。在Foxmail地址簿中选择一个记录不为空的文件夹,执行“工具”-“导出”- “文本文件”,保存文件名为“TEMP.CSV”, 在“下一步”的“请选择输出字段”中选择“姓名”、“电子邮箱地址”和“OICQ”,点击“完成”后便在指定路径生成了“TEMP.CSV”文件了。如果你装了微软office系列,会发现这是一个用EXCEL默认打开的文件,实际上它是EXCEL的逗号分隔值文件,双击打开后,其界面如图所示。

用PHP将数据导入到Foxmail

我们在这种情况下还是无法知道它的写入格式的。将“TEMP.CSV”文件改为用记事本打开,便可以发现它的格式非常简单:如图,文件第一行是Foxmail地址簿的字段,其它行是字段对应的值,各字段和值用英文逗号分隔。所以我们在PHP中按这种格式生成CSV文件,别人就可以下载并导入他们的Foxmail中了!

用PHP将数据导入到Foxmail

不过还有一个问题需要解决,那就是既然文件中以逗号作为分隔值,如果数据库记录中有英文逗号(注:以下符号若无特别说明皆指英文符号)怎么办?当然你可以先将数据中的逗号替换为中文逗号,但其实还有一个方法,那就是如果CSV文件相应的字段两端加上双引号(“即" "”)作分隔值,其间的英文逗号不作为分隔值,且字段中连续两个英文双引号(即“"”)也只作为一个显示,而不作为分隔值。

有了这些认识,我们就可以编写导出CSV文件的PHP文件了:

在服务器上运行上述PHP文件,下载回来的“tofoxmail.csv”文件用记事本打开如图所示。

在Foxmail地址簿中点击“工具”-“导入”-“CSV文件”……,数据库中一大堆的资料一下子就全被导入了,这个主意还不错吧!

用PHP将数据导入到Foxmail

(以上程序在Apache+PHP4+mySQL和IIS+PHP4+mySQL中皆测试通过。)

PHP 相关文章推荐
一个很不错的PHP翻页类
Jun 01 PHP
怎样去阅读一份php源代码
Aug 21 PHP
php读取javascript设置的cookies的代码
Apr 12 PHP
PHP清除数组中所有字符串两端空格的方法
Oct 20 PHP
php求一个网段开始与结束IP地址的方法
Jul 09 PHP
简单介绍win7下搭建apache+php+mysql开发环境
Aug 06 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
Dec 24 PHP
php用户登录之cookie信息安全分析
May 13 PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
PHP中散列密码的安全性分析
Jul 26 PHP
php利用ZipArchive类操作文件的实例
Jan 21 PHP
PHP 中的一些经验积累
Oct 09 #PHP
详细介绍PHP应用提速面面观
Oct 09 #PHP
基于PHP与XML的PDF文档生成技术
Oct 09 #PHP
利用js调用后台php进行数据处理原码
Oct 09 #PHP
PHP初学者头疼问题总结
Oct 09 #PHP
php代码优化及php相关问题总结
Oct 09 #PHP
PHP数据库开发知多少
Oct 09 #PHP
You might like
WordPress中获取所使用的模板的页面ID的简单方法
2015/12/31 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
5款Javascript颜色选择器
2009/10/25 Javascript
js为空或不是对象问题的快速解决方法
2013/12/11 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
jQuery实现checkbox全选的方法
2015/06/10 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
2016/06/03 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
Javascript点击按钮随机改变数字与其颜色
2016/09/01 Javascript
jQuery内容过滤选择器用法示例
2016/09/09 Javascript
Nodejs 搭建简单的Web服务器详解及实例
2016/11/30 NodeJs
HTML5+JS+JQuery+ECharts实现异步加载问题
2017/12/16 jQuery
微信小程序 多行文本显示...+显示更多按钮和收起更多按钮功能
2019/09/26 Javascript
JS精确判断数据类型代码实例
2019/12/18 Javascript
JavaScript前端实现压缩图片功能
2020/03/06 Javascript
js模拟实现烟花特效
2020/03/10 Javascript
js实现全选和全不选
2020/07/28 Javascript
在vant中使用时间选择器和popup弹出层的操作
2020/11/04 Javascript
python中利用Future对象回调别的函数示例代码
2017/09/07 Python
python http接口自动化脚本详解
2018/01/02 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
python函数不定长参数使用方法解析
2019/12/14 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
美国餐厅用品和厨房设备批发网站:KaTom Restaurant Supply
2018/01/27 全球购物
AMAVII眼镜官网:时尚和设计师太阳镜
2019/05/05 全球购物
中西医结合临床医学专业大学生自荐信
2013/09/28 职场文书
党员批评与自我批评
2014/02/12 职场文书
计划生育工作汇报
2014/10/28 职场文书
唐山大地震的观后感
2015/06/05 职场文书
关于应聘教师的自荐信
2016/01/28 职场文书
解决jupyter notebook图片显示模糊和保存清晰图片的操作
2021/04/24 Python