最近要做一个判断flv文件信息的程序,使用php对flv文件进行解析判断,百度了半天也没有对应的信息,后来又去csdn发帖子,得到的答复是目前还没有直接可以对flv文件进行处理的方法,于是决定放弃这个功能。不过后来终于让我在google上搜出一个牛人的blog,这哥们对flv的格式相当有研究。于是盯着看了好久,终于让我找到了一些的思路。尽管这个功能已经不做了,但是把思路写下来,总还是有用处的。

        不过我是第一次搞关于flv视频相关的东西,因此如果有说的不对的地方,希望有看到的同人不要骂我。年轻人[……]

继续阅读

 

1 框架编程概述
一个Html 页面可以有一个或多个子框架,这些子框架以<iframe>来标记,用来显示一
个独立的Html 页面。这里所讲的框架编程包括框架的自我控制以及框架之间的互相访问,
例如从一个框架中引用另一个框架中的JavaScript变量、调用其他框架内的函数、控制另一
个框架中表单的行为等。

2 框架间的互相引用
一个页面中的所有框架以集合的形式作为window 对象的属性提供,例如:
window.frames 就表示该页面内所有框架的集合,这和表单对象、链接对象、图片对象等是
类似的,不同的是,这些集合是document 的属性。因此,要引用一个子框架,可以[……]

继续阅读

今天同事有个项目发到测试环境测试,页面始终出不来,也不报错,日志里没有报错,页面上也没有报错。后来用strace追踪下,是smarty模板解析问题。我怀疑是tpl模板的语法有错误,于是把这个模板文件清空,然后在里面写上简单的”hello world”,可是也没输出到页面上来,有点奇怪了。又装了个 xdebug工具,开户trace和profiler,文件都生成了,但里面内容全是空。太神奇了。那只能用debug_backtrace()函数打印出调用栈了。发现有个write操作,于是在里面调试了下。传给write的参数有文件名,有内容。但打开那个文件里面却没有内容。后来又简单的写了个file_put[……]

继续阅读

文章系统

类型表
编号:11个字,数字
名称:32个字,文本
父id: 11个字,数字,父字段:编号

文章表
编号:11个字,数字
标题:32个字,文本
类型:11个字,数字,关联类型表
标记:1个字,数字,选项:推荐,置顶,热门,
缩略图:255个字,上传控件
内容:65535个字,用kindeditor文本编辑器

写好描述语言后,自动根据表名,字段名生成对应的英文字段映射,映射函数可以自己先,可以用拼音,也可以用md5。映射好的表结构应该类似下面

aaa表{
“bb”, int(11),comment:编号
“cc”,varchar(32),c[……]

继续阅读

很多项目设计的时候都考虑的很久远,巴不得连几百年的需求都考虑到了,想一次编码延用几百年,像下面的这段 v1/json,估计是想以后还有v2/json,v3/json,….v9999/json,万万世/json.想做秦始皇万万世,可惜他连二世也没有,只有永远的v1/json,然后作者就走了,然后后来的人上来后又要推翻重来。
clipboard1111

[……]

继续阅读

【编者按】如果你还在Symfony2和Redis使用中存在这样的错误观念——不能使用Redis作为主要存储;Symfony2的功能很多,以至于它的运行很慢,那么不妨看向Octivi的高请求网站打造。虽然没有底层细节,但详细展示基于两者应用的宏观特性,以及开发时的Symfony2特征。

 

以下为译文:


有人说Symfony2像其它的复杂框架一样,很慢,但是我们认为这一切都取决用户的本身。本文将介绍基于Symfony2,每周执行10亿多个请求的应用的软件架构细节。

下面将展示tweeting之后的社交反馈:

本文将介绍基于Sym[……]

继续阅读

马克斯的唯物辩证法告诉我们,世界本来就充满了矛盾,而这些矛盾有普遍性和特殊性,为什么很多人总想设计出一个统一的万能架构来解决所有问题?感觉就像在做永动机一样,给一次动力,永远运行。人家修高速公路也是遇山凿隧道,遇河架高桥。没见过都用一种在平地上那种铲平的方式吧,遇山炸平?遇河填平?我觉得还是要具体问题具体分析,有普遍性的我们归纳到一起,特殊性的就分开处理。我们一定要相信马克思他老人家的高见。

[……]

继续阅读

在某个字段有多个值时,在web一般用select展示,可以用下面的规则命名注释来达到自动生成select控件。

 

COMMENT '字段中文名,选项1的key:选项1的文本|选项2的key:选项2的text'


`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态,0:禁用|1:正常|2:待审核'


这样可以通过代码生成工具通过","和"|",":"来分隔,然后获取到这个字段的中文名,作为表单的label,选项文本作为select的text,选项key作为select的key


 $id=$name='sta[......]

继续阅读

QQ图片20161026172615

 

(gdb) f 15
#15 0x00007fffeaf565a0 in loader_import (path=0x7fffeaf57300 “/home/wwwroot/redlight/framework/ThinkPHP/Conf/convention.php”, len=61, result=0x7fffffffdf88)
at /root/lnmp1.3-full/src/php-5.5.17/ext/thinkphp_c/thinkphp_c.c:100

loader_import有个指针参数 path,指向的地址是0x7fffeaf5730[……]

继续阅读

clipboard
好深的栈,想看下他的源码调用过程,于是打开eclipse,我的eclipse下的是php5.3 ,和5.5代码有点不同,不过没关系
op_array = zend_compile_file(&file_handle, ZEND_INCLUDE TSRMLS_CC);
找到定义
Zend/zend_compile.c 35行
ZEND_API zend_op_array *(*zend_compile_file)(zend_file_handle *file_handle, int type TSRMLS_DC);
发现zend_compile_file只是个指针函[……]

继续阅读