80后的记忆
Eclipse+php插件+Xdebug搭建PHP完美开发/调试环境指南
最近要开始使用Zend框架开发中型应用系统了,由于采用完全面向对象的框架思路开发程序,不光开发思想,先前的Editplus+Dreamweaver编辑器组合显然不能满足我的要求了。我的新环境初步定为Eclipse+PDT插件+Xdebug+Apache。
先前一直对dotNET、Java的IDE的代码自动嗅探、代码提示、程序断点调试等等自动化功能羡慕不已,而自己写PHP只能靠着echo、var_dump()来调试程序,能不能让PHP也实现断点调试呢?先前在Eclipse的PHP插件中发现了Debug的选项,说明调试功能应该是可行的,但是不知道是怎么个配置法,跑上google查找资料发现没有一个完整的介绍配置文档,我只能将获得的信息拼接起来后来测试。
结果是:完美实现PHP断点调试!
每周一记
工作:
本周属于疯狂充电周,每天晚上到家就是上网啃书啃代码,,4月和5月基本上都是忙着做管理写文档,根本无暇顾及学习新的东西,现在闲下来了后感觉自己被抽空了一般,这年头搞技术不能落后于时代,不充电我就会有压力感,正准备周末大学一番Zend框架和Python的,周五回家后却接到加班通知在公司写文档2天。得知自己宝贵的双休被取消肯定是很烦的,更何况是写一些我并不熟悉的东西,实在是让我提不起精神和干劲去做,虽然很不情愿,还是硬着头皮努力的完成了,反正双休也报销了,做点贡献也好(虽然对我没什么帮助……囧……)。
公司准备开始新的项目,网站内容需要改版,老板喜欢把一个产品变成很多种产品摆在网站上,网站的内容变得像山一样多,但是实际的内容却就是那么一点,看起来玲琅满目产品也只是换了名字前缀和部分内容的同一个东西而已,我很努力的想说服老板不要这样做,并提出了一个更加简单的的展现方案,但是老板一句:“我觉得这样就好,你就按照我这样去做”让我彻底打消了去说服他的想法,想改变他的想法,真的是很难……
生活:
参与开发emlog后,开发新功能,与大伟讨论某些功能如何实现,怎样做让emlog更好等等实在是一件有趣而又充实的事情。除大伟之外我还通过emlog结识了不少的新朋友,与有着共同的语言的朋友一起讨论技术原来是那么的开心!
终于发现,一个人还是挺自由自在的,想干啥干啥想咋地咋地,但是每每看到街上的情侣时,心头总会飘过一丝莫名的酸楚和羡慕,人就是这么奇怪……我不断的用学习、娱乐、工作、做博客去充满自己的生活,努力引开自己的注意力,把心中的那块空缺忽略掉……可是那块空缺还是存在,时不时的刺激一下我……让我偶尔陷入惆怅之中……
稀里哗啦的写了一大串流水帐,虽然不多,有快乐,有烦恼,有牢骚,也许这就是生活,看似平淡其实却是个五味瓶,酸甜苦辣样样聚到……
天空之城主题曲《伴随着你》
经典的天空之城,经典的伴随着你
Discuz!编辑器附件添加原理不完全研究
Discuz!在6.0版的时候推出了自己的编辑器,除了它常用的编辑功能之外有一个很有特色的功能就是附件无上传插入.
用这个这个功能人都会发现在编辑时只要在本地选择了文件附件无需上传即可将它插入到帖子内容中,图文并排在第一次发贴的时候就可以实现,而不像一些传统程序必须上传了附件才可以插入到编辑器中.
作为开发者的我对这个功能实现的方式非常感兴趣,花了一点时间来研读了一下Discuz!编辑器此功能的代码.
本文分析的Discuz!版本为6.0,涉及的javascript和php文件包括
include/javascript/post_attach.js
include/javascript/post_editor.js
include/javascript/bbcode.js
include/newthread.inc.php
代码版权归康盛创想公司所有
Pro JavaScript系列讲座(3):继承
本文系转载,来源和出处不明
JavaScript的继承需要首先明确的是,它是模拟的,而不是真正(精确)的实现了继承。或者可以这样说,JavaScript的继承更倾向于由使用者自己来实现。
把RSS订阅从QQ邮箱迁移到了鲜果
先前自己收集了不少的好博客好网站的RSS FEED,本来用Google Reader作为自己的RSS阅读器,但是用来用去感觉就是不习惯,正好那时腾讯在QQ邮箱里增加了个订阅功能,虽然这个订阅器的功能非常简单但是跟邮箱和QQ绑定访问很方便而且功能基本够用,所以索性就使用了一个阵子,用到现在虽然订阅器更新了不少但是感觉速度和功能都越来越无法满足我的要求,在这种情况下我决定再次跳槽!这次的首要目标是鲜果,先前试用了一段时间感觉非常不错,而且里面的热文,博客榜等等可以让我寻找到更多的优秀文章和博客,资源的聚合和会员间的资源共享都是QQ阅读器和Google Reader所有没有的,相对QQ和Google,鲜果那流畅的访问速度也是我选择它的重要原因.
emlog开发日志
1.重构了所有的模板逻辑代码.
先前的emlog模板html输出采用的是print <<<eot来完成的,这样的设定让模板制作上有很大的麻烦,首先模板html代码在所有的编辑器里面都被当作php字符创来识别,都是一个颜色,阅读起来非常不方便,而且由于是当作了字符串,在Dreanweaver中根本就看不到预览,调试的时候完全只能靠浏览器的显示来帮忙,整个过程及其繁琐和复杂.其次 EOT编码必须在哪一行的第一个,前面不能有空格,写代码的时候写个if else简直是要把我累死.本来想用个PHP模板引擎解决这个问题,但是跟那多记忆讨论后觉得模板引擎其实也很麻烦(编译啊,缓存啊),不是代码不人性化么,我们采取了一个最简单的方法来解决,直接把模板的格式修改为<?php ?>与HTML混杂,这样老方式的问题就不复存在了,要预览有预览,要代码高亮有代码高亮,同时性能也是最好的.不过重构代码的确是个体力+技术活.先用正则批处理后再逐个模板一一检查花了我不少时间,不过收获也很大,发现了一个BUG.
2.加入Gzip开启的功能
Gzip是个好东西,开启后能为博客省不少的流量.Gzip开启其实代码并不多,但是调试的时候我却遇到个麻烦,本来按照和那多记忆讨论的方案做成自动开启的,但是却没有考虑服务器PHP配置开启的问题,最后还是在后台增加了Gzip的开关给用户自己选择的权利.
3.日志附件上传问题
这个东西其实就是个功能人性化设计的问题,现在emlog的附件必须提交日志后方能插入到编辑器中排版,写图文混排的日志时非常麻烦.这个我现在考虑了2个方案来解决,到时候需要跟那多记忆再讨论讨论研究研究后再定版和实施.这个问题一解决emlog日志发布部分就非常好了.
今天在落伍上看到有人在推荐emlog感觉很欣慰,emlog还是有用户肯定的.
先写这么多,emlog的进步还需要我们继续努力...

![附件[ematt:110]](http://be-evil.org/uploadfile/200806/thum-1cc3d7eccb74de697967c191ae15d02620080625212657.jpg)
