坚信科学,分享技术

>>>尝试更加利于阅读的2014版科学院,以后都在新版上写。

Tag Archives: php扩展

究竟什么是TSRMLS_CC?

翻译:54chen.com 原文地址:http://blog.libssh2.org/index.php?/archives/22-What-the-heck-is-TSRMLS_CC-anyway.html 如果你曾经做过php内核或者是php扩展方面的工作,你一定见到过这个到处都是的结构,但是却从来没有人提起过它。知道这是什么的人典型回答不知道的人都会这样说:“不用管它是什么,只需要在这里、这里还有这里用,如果编译器说少一个tsrm_ls,就加一个...”。这样回答并非都是因为这个人懒惰(的确是有一点点懒),其实那只是在说引擎甚至可以不管这个神奇的值在简化什么,这是因为一个新入门的扩展开发者知道它的结构没有什么益处。这信息就像奶牛的意见一样,没关系,就是牛叫而已。 既然我喜欢听自己喋喋不休的无意义主题(这个月我已经少写很多博客了),我想我得弥补这一主题,看看会不会有人通过他能领会什么。你可以责怪Lukas(Lukas Smith 是 PEAR DB 的主要作者应该是这个Lukas,译者注),他让我一直在planet-php.net上。 术语 TSRM Thread Safe Resource Manager - 这是一个经常被忽视的层面,就会有也是很少被讨论到,在你的PHP源代码包中,它被隐藏在/TSRM目录中。默认情况下,TSRM 层只在编译需要它的SAPI的时候才会打开(例如apache2-worker)。所有的在win32下编译的SAPI都会有TSRM层而不会管它们是否需要。 ZTS Zend Thread Ssafety -通常情况下,与TSRM有相同的用处。具体

Continue reading

Posted in php, 资料文档 | Tagged , , , | 10 Comments

sscanf函数的各种用法

sscanf是一个运行时函数,原形很简单:  int sscanf(  const char *buffer,  const char *format [,  argument ] ...  );  它强大的功能体现在对format的支持上。  sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者以固定字符串为输入源。      char str[512] = ;    sscanf("123456 ", "%s", str);    printf("str=%s", str); 输出 str=123456     sscanf("123456 ", "%4s", str);    printf("str=%s", str); 输出 str = 1234   sscanf("123456 abcdedf", "%[^ ]", str);    printf("str=%s", str); 输出 str=123456 (遇到空格为止)   sscanf("123456abcdedfBCDEF", "%[^A-Z]", str);    printf("str=%s", str); 输出 str=123456abcdef (遇到指定字符为止) …

Continue reading

Posted in linux, php | Tagged , , , | Leave a comment

最简单的建立php扩展的方法

 [文章作者:陈臻 本文版本:v1.0 最后修改:2008.11.18 转载请注明原文链接:http://www.54chen.com/c/91]

Continue reading

Posted in php | Tagged | 4 Comments