Submitted by gouki on 2010, August 9, 12:17 PM
网上的HTML万年历大约还是几年前的吧?今天在群里有人提到,为什么有的万年历上写立秋是8日,有的却是7日,所以就找了找资料 。
1、http://hi.baidu.com/wlzqi/blog/item/3c5679311e5bee19ebc4afc0.html,这个是介绍的最详细的,还有一些具体的算法
2、http://www.agr.cn/Calendar.htm,这个看上去最专业,但因为代码压缩过了也无法看到具体详情
然后再查资料 ,好象都是说根据现代天文算法制作的。
在这里http://www.fjptsz.com/xxjs/xjw/rj/113.htm,有一位莆田十中的朋友写下了部分代码,还有一些解释。
最后,你可以google一下《天文算法》一书,你会发现有很多链接,可以详细的学习一下(我是没能力了,一些专业的词语都看不懂。。。其实只要不用来算节气,其他的算法网上还是有简化版的,PHP可谓是拿来即可使用。)
Tags: 万年历
Misc | 评论:0
| 阅读:15276
Submitted by gouki on 2010, June 7, 6:38 AM
这里提的用户行为分析并不是说用户实际在做什么,而是分析大多数用户在你的站点上关注些什么。虽然这些都可以通过统计软件分析得出,但你真的了解用户在做什么吗?
你知道你的用户最关注你的页面的哪一部分?哪 一块内容被点击的最多?
记得好象在08年的艾瑞咨询贴出的几个图片上,介绍了一些用户行为分析的图片,后来又在google adsense的PDF中看到了这些。那些图片上最热点,google adsense就说了,在这些区域放置广告或者在周围放置,被点击、被看到的机率远远超过放在其他位置。
但这些专业的软件怎么来呢?以前在篱笆的时候,江闽找过一款,好象也是付费的,免费测试只有一段时间,前段时间52shidai.com站长也介绍过一款,但免费的好象只能分析10个用户的行为(不记得是不是这样,反正是受限的)
因此,看到虫少侠贴的这篇东西,还是要收藏一下,并与各位共享:

Userfly
Userfly可以提供免费的网页访客动作记录服务。只需要在网页中添加一段简单的Javascript代码,就可以记录访客从打开该网页到关闭整 个过程中的动作。 Userfly能够记录的内容包括鼠标的移动、点击以及键盘输入等动作。下面这个视频很好的讲解了Userfly的使用方法和主要的功能http://userfly.com
免费用户每个小时记录10位用户(10个IP)的动作。Userfly也提供收费服务,除了可以记录更多的用户外,还支持身份验证和网页加密。对于网站拥 有者来说,Userfly可以很方便的对用户行为进行检测和分析,通过A/B Testing等方法为网站UI/UE提供非常有价值的信息。但是对于很多网页访问者来说,如果知道他们所浏览的网页有这样的功能,可能就会敬而远之了。
Mouseflow
mouseflow是一款在线分析工具,它能对访客的浏览习惯和鼠标操作行为进行跟踪,从而获取人们对页面的关注范围和操作习惯,为你对页面进行优化提供了重要依据。它将汇总分析人们在页面上的鼠标操作动作,并以直观的“热区图”形式反映出来。
打个比方:大家都见过baidu和google的页面热区图,从图中可以看出用户对于页面最点击最多,也就是最关注的区域。那么,如果你的站出现在红、黄色区域中,将收到的点击次数也将是最多的。
在自己的站上分析出热区图数据,把访客最关注的内容放到热区范围内,形成对网站内容和布局层面的优化。我们就用mouseflow来完成这项工作。首先需要在你的网站上部署mouseflow跟踪代码。去http://mouseflow.com注 册,然后添加需要进行鼠标动作跟踪的网站之后就能得到跟踪代码,把它部署到你网站中。然后mouseflow就可以为你记录鼠标动作了。但给出分析数据需 要等几个小时的时间。当然,时间越长,记录的鼠标数据也越多,分析出来的数据也越准确。等待几天后再登陆mouseflow,就可以看到 mouseflow详尽的统计数据了。点击View stats,可以查看网站的状态数据。mouseflow可以为免费帐户每月保存并分析100条操作数据。在这个页面里还有:页面浏览量、平均访问深度、 平均访问时长、web页面情况、最流行页面、最热页面等统计数据。便于对网站的整体情况有一个大致了解。
接下来是查看跟踪记录。在这个页面中我们可以查看到访客情况信息。如访客的地理位置,来源链接,进入页面,浏览页面量,停留时间,浏览器等。最酷的 是,点击绿色播放按钮,还可以回放某访客在你页面上的每一次鼠标操作动作。看看他在浏览你的页面时做了怎样的操作。比如鼠标在哪里点击了,并且完整地回放 是怎样浏览你的页面的。
然后就是重点中的重点了:热区分析。mouseflow可以分析你的每一个页面数据。比如一个页面的的鼠标点击热区,以及视觉热区,红色为热,蓝色为冷。
ClickTale
ClickTale是一家国外的免费网站统计服务网站,但ClickTale并不以流量统计见长,它是对你的网站访客浏览行为进行分析的一个工具, 以类似视频的方式将访问者在你的网站上进行的操作全部记录下来,你可以在线观看也可以下载到电脑上。利用ClickTale的访客行为视频记录,可以帮你 更好的布局你的网页,给访问者带来更好的用户体验,以使你的网站回头客越来越多!有点类似Free8之前介绍的CrazyEgg,不过ClickTale 提供的是访客动态行为记录,CrazyEgg提供的是网页热点分析图像,各有所长,可同时使用,相互参考。
网址:http://www.clicktale.com
Tags: 用户行为, 行为分析
Misc | 评论:0
| 阅读:19157
Submitted by gouki on 2010, February 24, 9:35 AM
自从汉编被铁血论坛中批斗了之后,现在新闻就少了很多了。易语言的新闻还是很少的,低调低调。。
吴涛,仿佛是CCED的主要coder?不过也算是不错了。能够挺到现在。以前是谁说的?凡是能够挺下来的,肯定都有过人之处的。不多讲,免得被和谐,看新闻吧。
易语言5.0 相对于易语言4.x更新说明
增加静态编译功能,支持挂接第三方链接器(比如VC6中的link.exe)。
静态编译后的易语言可执行程序(exe)和动态链接库(dll),运行时不再依赖任何支持库文件,文件尺寸更小(相对以前的独立编译),PE结构更合理 (取消了“易格式体”),加载速度更快,而且有效解决了“病毒误报”和“易被脱壳”的难题。
为实现静态编译,易语言编译器、核心支持库、集成开发环境(IDE)等均有重大更新,支持库开发架框有扩展性调整,绝大多数官方支持库都已针对 静态编译完成自身改造并提供静态库。
目前绝大多数官方支持库均已支持静态编译,只有极少数不支持静态编译:vclbase.fne, jedi.fne, com.run/cominf.run/ocx.run。
第三方支持库,由源代码作者按照静态编译技术文档(参见sdkstatic_docs)完成自身改造并提供静态库后,可支持静态编译。外部OCX 组件和COM组件,不支持静态编译。
此次重大版本升级不影响以前的源代码(.e)和模块(.ec)。只要代码或模块中未用到“不支持静态编译”的支持库、COM/OCX等,都可以静 态编译。以前编译好的模块(.ec)甚至不需要重新编译即可直接支持静态编译。
支持库开发框架调整是扩展性调整,比较好的做到了向前向后兼容。即,新版支持库可被旧版易语言或易程序使用,旧版支持库也可被新版易语言或易程序 使用(只是不支持静态编译)。
静态编译后的易语言EXE/DLL之间不能再共享譬如窗口、窗口组件等类似资源,对于已经静态连接到一个EXE/DLL中的支持库,该支持库中的 数据或资源将不能再被其它EXE/DLL中所使用的同名支持库访问。这是因为代码被分别静态链接接到各个独立模块(EXE/DLL)中。
易语言5.0精简版安装包(不包括 知识库、多媒体教程)
易语言5.0完全版安装包 (包括知识库、多媒体教程)
另附预告:易语言5.1版持续开发中,其中有关键更新,将于近期(或节后)推出测试版,敬请期待。
来源:http://www.eyuyan.com/news/2010/020102.html
另:易语言居然还有Elogo,飞扬,和英文版【对于这个,我很纳闷,其他没啥】
Tags: 易语言, eyuyan
Software | 评论:0
| 阅读:15725
Submitted by gouki on 2009, January 12, 12:26 PM
原作者:冰山上的播客
看到这篇文章的时候,很是惊讶原作者的耐心,虽然我们在平时用的也有一些,但没有作者列出来的全,写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了。呵呵。(COM方式不讲了,这种可读的太多了,我也写过利用wps等进行word等的生成之类的文章 )
但是在读的时候,只用过一种,具体是什么忘了,要回去翻代码了。因为采用的是拿来主义,记不住。
原文地址:http://xinsync.xju.edu.cn/index.php/archives/3858
原文内容:
最近因项目需要,需要开发一个模块,把系统中的一些数据导出成Excel,修改后再导回系统。就趁机对这个研究了一番,下面进行一些总结。
基本上导出的文件分为两种:
1:类Excel格式,这个其实不是传统意义上的Excel文件,只是因为Excel的兼容能力强,能够正确打开而已。修改这种文件后再保存,通常会提示你是否要转换成Excel文件。
优点:简单。
缺点:难以生成格式,如果用来导入需要自己分别编写相应的程序。
2:Excel格式,与类Excel相对应,这种方法生成的文件更接近于真正的Excel格式。
如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,例如下面就把$yourStr从utf-8转换成了gb2312:
$yourStr = mb_convert_encoding(”gb2312″, “UTF-8″, $yourStr);
【有网友指出上面的转换是错误的,确实,上面的参数顺序是iconv函数的,$yourStr应该是第一个参数。】
下面详细列举几种方法。
一、PHP导出Excel
1:第一推荐无比风骚的PHPExcel,官方网站: http://www.codeplex.com/PHPExcel
导入导出都成,可以导出office2007格式,同时兼容2003。
下载下来的包中有文档和例子,大家可以自行研究。
抄段例子出来:
PHP代码
- <?php
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- error_reporting(E_ALL);
-
-
- set_include_path(get_include_path() . PATH_SEPARATOR . ‘../Classes/’);
-
-
- include ‘PHPExcel.php’;
-
-
- include ‘PHPExcel/Writer/Excel2007.php’;
-
-
- echo date(’H:i:s’) . ” Create new PHPExcel object\n”;
- $objPHPExcel = new PHPExcel();
-
-
- echo date(’H:i:s’) . ” Set properties\n”;
- $objPHPExcel->getProperties()->setCreator(”Maarten Balliauw”);
- $objPHPExcel->getProperties()->setLastModifiedBy(”Maarten Balliauw”);
- $objPHPExcel->getProperties()->setTitle(”Office 2007 XLSX Test Document”);
- $objPHPExcel->getProperties()->setSubject(”Office 2007 XLSX Test Document”);
- $objPHPExcel->getProperties()->setDescrīption(”Test document for Office 2007 XLSX, generated using PHP classes.”);
- $objPHPExcel->getProperties()->setKeywords(”office 2007 openxml php”);
- $objPHPExcel->getProperties()->setCategory(”Test result file”);
-
-
- echo date(’H:i:s’) . ” Add some data\n”;
- $objPHPExcel->setActiveSheetIndex(0);
- $objPHPExcel->getActiveSheet()->setCellValue(’A1′, ‘Hello’);
- $objPHPExcel->getActiveSheet()->setCellValue(’B2′, ‘world!’);
- $objPHPExcel->getActiveSheet()->setCellValue(’C1′, ‘Hello’);
- $objPHPExcel->getActiveSheet()->setCellValue(’D2′, ‘world!’);
-
-
- echo date(’H:i:s’) . ” Rename sheet\n”;
- $objPHPExcel->getActiveSheet()->setTitle(’Simple’);
-
-
- $objPHPExcel->setActiveSheetIndex(0);
-
-
- echo date(’H:i:s’) . ” Write to Excel2007 format\n”;
- $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
- $objWriter->save(str_replace(’.php’, ‘.xlsx’, __FILE__));
-
-
- echo date(’H:i:s’) . ” Done writing file.”;
2、使用pear的Spreadsheet_Excel_Writer类
下载地址: http://pear.php.net/package/Spreadsheet_Excel_Writer
此类依赖于OLE,下载地址:http://pear.php.net/package/OLE
需要注意的是导出的Excel文件格式比较老,修改后保存会提示是否转换成更新的格式。
不过可以设定格式,很强大。
PHP代码
- <?php
- require_once ‘Spreadsheet/Excel/Writer.php’;
-
-
- $workbook = new Spreadsheet_Excel_Writer();
-
-
- $workbook->send(’test.xls’);
-
-
- $worksheet =& $workbook->addWorksheet(’My first worksheet’);
-
-
- $worksheet->write(0, 0, ‘Name’);
- $worksheet->write(0, 1, ‘Age’);
- $worksheet->write(1, 0, ‘John Smith’);
- $worksheet->write(1, 1, 30);
- $worksheet->write(2, 0, ‘Johann Schmidt’);
- $worksheet->write(2, 1, 31);
- $worksheet->write(3, 0, ‘Juan Herrera’);
- $worksheet->write(3, 1, 32);
-
-
- $workbook->close();
- ?>
3:利用smarty,生成符合Excel规范的XML或HTML文件
支持格式,非常完美的导出方案。不过导出来的的本质上还是XML文件,如果用来导入就需要另外处理了。
详细内容请见rardge大侠的帖子:http://bbs.chinaunix.net/viewthread.php?tid=745757
需要注意的是如果导出的表格行数不确定时,最好在模板中把”ss:ExpandedColumnCount=”5″ ss:ExpandedRowCount=”21″”之类的东西删掉。
4、利用pack函数打印出模拟Excel格式的断句符号,这种更接近于Excel标准格式,用office2003修改后保存,还不会弹出提示,推荐用这种方法。
缺点是无格式。
PHP代码
- <?php
-
- header(”Pragma: public”);
- header(”Expires: 0″);
- header(”Cache-Control: must-revalidate, post-check=0, pre-check=0″);
- header(”Content-Type: application/force-download”);
- header(”Content-Type: application/octet-stream”);
- header(”Content-Type: application/download”);;
- header(”Content-Disposition: attachment;filename=test.xls “);
- header(”Content-Transfer-Encoding: binary “);
-
-
- xlsBOF();
- xlsWriteLabel(1,0,”My excel line one”);
- xlsWriteLabel(2,0,”My excel line two : “);
- xlsWriteLabel(2,1,”Hello everybody”);
-
- xlsEOF();
-
- function xlsBOF() {
- echo pack(”ssssss”, 0×809, 0×8, 0×0, 0×10, 0×0, 0×0);
- return;
- }
- function xlsEOF() {
- echo pack(”ss”, 0×0A, 0×00);
- return;
- }
- function xlsWriteNumber($Row, $Col, $Value) {
- echo pack(”sssss”, 0×203, 14, $Row, $Col, 0×0);
- echo pack(”d”, $Value);
- return;
- }
- function xlsWriteLabel($Row, $Col, $Value ) {
- $L = strlen($Value);
- echo pack(”ssssss”, 0×204, 8 + $L, $Row, $Col, 0×0, $L);
- echo $Value;
- return;
- }
- ?>
- 不过笔者在64位linux系统中使用时失败了,断句符号全部变成了乱码。
-
- 5、使用制表符、换行符的方法
- 制表符”\t”用户分割同一行中的列,换行符”\t\n”可以开启下一行。
- <?php
- header(”Content-Type: application/vnd.ms-execl”);
- header(”Content-Disposition: attachment; filename=myExcel.xls”);
- header(”Pragma: no-cache”);
- header(”Expires: 0″);
-
- echo “hello”.”\t”;
- echo “world”.”\t”;
- echo “\t\n”;
-
-
- echo “this is second line”.”\t”;
- echo “Hi,pretty girl”.”\t”;
- echo “\t\n”;
- ?>
6、使用com
如果你的PHP可以开启com模块,就可以用它来导出Excel文件
PHP代码
- <?PHP
- $filename = “c:/spreadhseet/test.xls”;
- $sheet1 = 1;
- $sheet2 = “sheet2″;
- $excel_app = new COM(”Excel.application”) or Die (”Did not connect”);
- print “Application name: {$excel_app->Application->value}\n” ;
- print “Loaded version: {$excel_app->Application->version}\n”;
- $Workbook = $excel_app->Workbooks->Open(”$filename”) or Die(”Did not open $filename $Workbook”);
- $Worksheet = $Workbook->Worksheets($sheet1);
- $Worksheet->activate;
- $excel_cell = $Worksheet->Range(”C4″);
- $excel_cell->activate;
- $excel_result = $excel_cell->value;
- print “$excel_result\n”;
- $Worksheet = $Workbook->Worksheets($sheet2);
- $Worksheet->activate;
- $excel_cell = $Worksheet->Range(”C4″);
- $excel_cell->activate;
- $excel_result = $excel_cell->value;
- print “$excel_result\n”;
- #To close all instances of excel:
- $Workbook->Close;
- unset($Worksheet);
- unset($Workbook);
- $excel_app->Workbooks->Close();
- $excel_app->Quit();
- unset($excel_app);
- ?>
一个更好的例子: http://blog.chinaunix.net/u/16928/showart_387171.html
一、PHP导入Excel
1:还是用PHPExcel,官方网站: http://www.codeplex.com/PHPExcel。
2:使用PHP-ExcelReader,下载地址: http://sourceforge.net/projects/phpexcelreader
举例:
PHP代码
- <?php
- require_once ‘Excel/reader.php’;
-
-
- $data = new Spreadsheet_Excel_Reader();
-
-
- $data->setOutputEncoding(’utf8′);
-
- $data->read(’ jxlrwtest.xls’);
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {
- for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {
- echo “\”".$data->sheets[0]['cells'][$i][$j].”\”,”;
- }
- echo “\n”;
- }
-
- ?>
Tags: php, excel, 转摘
PHP | 评论:3
| 阅读:46618
Submitted by gouki on 2008, September 9, 12:08 PM
phpoo.com邮箱可以申请了,现在用的是google的服务,但我目前没有办法把cname等指向http://mail.phpoo.com,所以有点郁闷,现在只能通过:https://mail.google.com/a/phpoo.com/来访问,如果有需要申请的朋友,可以和我联系,好象不能直接注册的。
呵呵。尝试改成可以mail.phpoo.com能够访问。如果还是不行,考虑换到live.com上去,但,据说是不支持国内的?不清楚,啥时候问问流年,因为thinkphp.cn的邮箱好象就是用live邮箱搞的
Tags: phpoo.com, 邮箱, mail, 申请
Ideas | 评论:2
| 阅读:26252