技术

[PHP]QueryPath中的编码问题

其实发现QueryPath这个神奇的类库已经是几年前的事情了,QueryPath是一个PHP的DOM操作类库,仿jQuery风格。最近终于有机会来实战一把,却遇到了万恶的编码问题,根据API文档用convert_to_encoding来控制编码却一直失败(源码是UTF-8的),拿起了传说中的霰弹枪一顿乱打之后,还是在PHP官网的手册评论里面找到了答案,嗯,来一段代码或许更清楚一些

5c05ff8[......]

继续阅读

Tags: ,

星期六, 四月 9th, 2011 WebDev, 技术 没有评论

给YOURLS写了个简单的首页

很是蛋疼地架了一个YOURLS,发现默认竟然没有index.php……只有admin后台有,没有一个传统意义上短网址服务的手动填网址->提交->显示短网址 的页面,虽然用加书签的方式也能用,但我怎么也不习惯用书签来做这种事啊>_<

简单地搜了一下没有找到现成的,但是发现API相当简单(短网址的API能有多复杂啊),于是自己动手用jQuery写了一个,代码灰常地短,样子[......]

继续阅读

Tags:

星期五, 十一月 12th, 2010 WebDev, 技术 没有评论

javascript的ajax编程中setTimeout的妙用-0毫秒之后执行

setTimeout通常用于动画/计时等应用,但是不加第二个时间参数或者写0或1毫秒也是非常有用的,有时需要让某段代码“略微延后”执行以等待之后的代码(例如函数调用者的后续代码,以及后续事件的代码)

我把最近用setTimeout解决的一个问题举例一下,需求是这样的:先用ajax(1)打开一个浮动层“对话框”,内容由ajax(1)获取,其中含有另外一个表单,在对话框中提交以完成某操作ajax(2),需要在提交完成以后自动关闭那个对话框并执行第三个ajax(3)操作(刷新页面数据)

基于代码复用,灵活性等的角度考虑,我希望打开对话框的这个function能够接受关闭时的动作为参数(这里是执行ajax(3)),以及接受是否自动关闭对话框也作为参数

整个过程在jQuery和jQueryUI下完成,例子中我去掉了jQueryUI,因为此处jQueryUI仅仅负责渲染对话框,另外例子里面省略了第三个ajax,仅以输出信息示意

点击这里查看范例
[......]

继续阅读

Tags: ,

星期日, 九月 19th, 2010 WebDev, 技术, 无类别扯谈 没有评论

thinkPHP中的一个函数require_cache的性能问题研究

thinkPHP中有个require_cache函数包装了require,显示地实现了@require_once的功能,注释中标榜为“优化的require_once”,然而实际情况如何,我做了个很简单的功能测试,for循环1000000次分别测试require_cache和require_once的性能

require_once: 2.009112, 2.099082, 2.075355
require_cache:23.285378, 23.309440, 23.334591
require_test:2.745165, 2.731406, 2.859381
require_test2:23.386466, 23.116133, 23.034672

结果很明显了,是由于每次的realpath调用严重增加了IO开销导致的性能急剧下降,而其他因素如函数调用、静态变量使用等对性能影响相对于IO开销都可以忽略不计,毕竟是在内存发生的,顺带一提,测试环境是win7+APMServ+ThinkPHP2.0

当然,对于实际应用来说,由于不会有如此大数量的require发生,所以十倍的性能差距基本可以无视,但ThinkPHP的这个函数仍然摆脱不了画蛇添足的嫌疑

下面:附录1&2,require_cache代码以及测试用代码
[......]

继续阅读

Tags: , ,

星期五, 七月 23rd, 2010 WebDev, 技术 没有评论

[Python]简单的批量复制UE工程中的文件

嗯,之前就说要搞python要搞python的,想到就动手做,发现确实是门非常不错的语言,动手实现了之前发的批量复制UE工程中的文件,就是读ini,解析后批量复制

点继续阅读看源码……
[......]

继续阅读

Tags: ,

星期五, 七月 23rd, 2010 技术 没有评论

[PHP]简单的批量复制UE工程中的文件

习惯用UE来敲PHP代码,刚才试用了一下一直有的“工程”功能,发现虽然CTAGS对PHP没用,但因为工程文件是很和谐的INI文件格式,所以除了方便打开相关文件以外,也能很方便地写脚本导出相关文件,下面给出PHP版本,在头部写上工程文件的绝对路径和要导出到的目录,运行即可

点继续阅读看源码……
[......]

继续阅读

Tags: ,

星期五, 七月 23rd, 2010 WebDev, 技术 没有评论

Page optimized by WP Minify WordPress Plugin