个人以为:学一门脚本很容易,但是学几门就是一个痛苦的事,因为我经常把他们搞混。。
于是我下决心写一个能够帮我理清楚的文档,我命之为《PPJ回忆录》,从周5写到今天,精疲力尽,剩下OO和正则部分没写,我决定先歇会~
毫不客气的说,对于同时学里面任意两门语言的同学,这个文档都会对你有帮助。
———–
post by gmail~
个人以为:学一门脚本很容易,但是学几门就是一个痛苦的事,因为我经常把他们搞混。。
于是我下决心写一个能够帮我理清楚的文档,我命之为《PPJ回忆录》,从周5写到今天,精疲力尽,剩下OO和正则部分没写,我决定先歇会~
毫不客气的说,对于同时学里面任意两门语言的同学,这个文档都会对你有帮助。
———–
post by gmail~
看图吧,用得到的话会觉的简直太爽了,^_^
使用方法:
打开需要标记的文件,输入命令 :GettextMarkStart,开启辅助
选择需要翻译的文本

按_出来提示菜单,选择完成标记

配置:http://code-of-emptyhua.googlecode.com/svn/trunk/vim/addgettextmark.vim
———–
post by gmail~
以后发代码都会放到bookmark里,feed里不会看到了。
这次写了一个比较梦幻的分页类,简单,但是很好用。。
主要特点:
不适合:
没有对大量数据的分页做优化,所以不适用于变态分页.
简单举个例子,下面是一个对数组分页的例子
$pager = new Pager; $pager->count = count($data['contacts']); $pager->count_per_page = 20; $pager->param = 'p'; $pager->template = <<<EOF {start}-{end},共{count}<br /> {first}<a href="{first_url}">首页</a>|{/first} {pre}<a href="{pre_url}">上一页</a>|{/pre} {next}<a href="{next_url}">下一页</a>|{/next} {last}<a href="{last_url}">末页</a>{/last} EOF; //对数组进行分页 foreach($pager->slice($data['contacts']) as $contact): //...
功能比较全的测试代码
$pager = new Pager; $pager->count = 200; $pager->count_per_page = 20; $pager->param = 'p'; $pager->template = <<<EOF {first}<a href="{first_url}">首页</a>{/first} {pre}<a href="{pre_url}">上一页</a>{/pre} <ul> {pages4}<li><a {current}style="color:red;"{/current} href="{page_url}">{page_num}</a></li>{/pages4} </ul> {next}<a href="{next_url}">下一页</a>{/next} {last}<a href="{last_url}">末页</a>{/last} {start}-{end}/{count} <select onchange="window.location.href=this.value;"> {pages}<option {current}selected=selected{/current} value="{page_url}">{page_num}</a>{/pages} </select> EOF; //这里使用sql获取数据 echo $p->get_sql('select * from xxx where xxx {limit}');
代码:http://code-of-emptyhua.googlecode.com/svn/trunk/phplib/pager.class.php
———–
post by gmail~
本周开发一个web行事历,遇到一个比较繁琐的问题,就是重复事件。比如我创建了一个每周1,3,5重复的事件,当点击2012年的某月的日历时,需要显示这个事件会在哪几天发生。我又偷懒的去google找PHP源码,这回真的没有…,于是按照正常的想法实现了一个,不知道有没有更好的实现~
简述如下:
恩,问题描述出来就是找出特定规则的重复事件E在日期DA和日期DB之间会发生的日期,那么俺先粗略的在日期DA之前找一个事件E会发生日期DC然后从DC开始严格按照重复规则遍历,找出所有事件发生日期。
源代码:
http://code-of-emptyhua.googlecode.com/svn/trunk/phplib/calutil.class.php
———–
post by gmail~
恩,python中一般会把调试代码跟普通代码混在一块
class xx: # ..... if __name__ == '__main__': testxx = xx() #测试代码....
这个__name__ == ‘__main__’判断此文件是否被直接执行,而不是被其他文件import,所以在vim中调试时可以直接输入:!python % 执行当前正在编辑的文件,调试代码便会执行并输出结果
php也可以这么加调试代码,php中是这么实现的
class xx { // ...... } //确定当前被执行的文件就是自己,而不是被其他php文件包含 if (realpath($_SERVER['SCRIPT_FILENAME']) == __FILE__) { $testxx = new xx; //测试代码.... }
如果仅限在命令行运行测试代码就再加个条件
if (php_sapi_name() == 'cli' && realpath($_SERVER['SCRIPT_FILENAME']) == __FILE__)
为了更速度,vim配置里添加了一个快捷键F5
"php和python调试快捷键 au FileType php map <F5> :call DebugRun('php')<cr> au FileType php imap <F5> <Esc>:call DebugRun('php')<cr> au FileType python map <F5> :call DebugRun('python')<cr> au FileType python imap <F5> <Esc>:call DebugRun('python')<cr> function DebugRun(cmd) :w execute '!' . a:cmd . ' %' endfunction
OK,写完调试代码按下F5立刻有结果。
———–
post by gmail~