原文:http://technosophos.com/content/mongodb-5-things-every-php-developer-should-know-about-mongodb
感觉这篇文章说了一些 MongoDB 的要点,适合 MongoDB 扫盲使用。所以翻译出来,造福于民。虽然文章是针对 PHP 开发者写的,但实际上 python、ruby 或者其他 web 开发人员也可借鉴。
—————————-这里是译文分隔线—————————–
(more…)
原文:http://technosophos.com/content/mongodb-5-things-every-php-developer-should-know-about-mongodb
感觉这篇文章说了一些 MongoDB 的要点,适合 MongoDB 扫盲使用。所以翻译出来,造福于民。虽然文章是针对 PHP 开发者写的,但实际上 python、ruby 或者其他 web 开发人员也可借鉴。
—————————-这里是译文分隔线—————————–
(more…)
关于配置文件,在 PHP 的 Zend Framework 中我做过一些简单的关于性能的测试:http://www.mikespook.com/index.php/archives/36。将 ninnypro 的配置文件从 ini 修改为 xml ,并且声称能提高传说中的性能。
最近被调到另外一个在用 python 的组帮忙,阅读了他们的实现服务器端的 python 代码之,配置文件近二十余个,全是 xml 文件。为了使用着些配置文件,从 XMLFile 继承,实现了二十余个 Config 类。
这看起来似乎没什么问题。 (more…)
几年前(大约应该在02-03年之间,也就是php5刚出来那会)曾经跟朋友讨论过一次关于php的命名空间的问题。当时觉得,php要是能有命名空间,那是多完美的事情啊。
如今,php5.3已经包含了命名空间。但是似乎并没有当年的那种感慨了。大约是旧的系统要迁移,新的系统要重新设计,这个名字空间都有点鸡肋的感觉。看来还要习惯一下才好。
看到这篇文章,觉得说得是有点对的。也不长,就随手翻译出来。翻译后的感觉:作者 超级喜欢使用“However”。
能说明两个问题:
作者:Craig Buckler
原文:http://www.sitepoint.com/blogs/2009/08/13/are-php-namespaces-bad/ (more…)
这个漏洞说大也大,说小也小。大是因为真得可以通过注入的方式让漏洞代码执行任意代码。小是因为产生漏洞的环境还是比较苛刻的。
来源于此:http://milw0rm.com/exploits/8641
当最后一个参数设置为“e”,也就是将替换的内容作为 PHP 代码执行的时候,漏洞就产生了。
例如:
function hi80vul() {}
$str = '\', phpinfo(), \'';
mb_ereg_replace('^(.*)$', 'hi80vul(\'\1\')', $str, 'e');
又例如:
function hi80vul() {}
$str = '\', var_dump(get_loaded_extensions()), \'';
mb_ereg_replace('^(.*)$', 'hi80vul(\'\1\')', $str, 'e');
如果有在代码中使用过 mb_ereg_replace 和 mb_eregi_replace,以及参数“e”,那就赶紧检查一下是否有这样的安全隐患吧。
首先,在 google 做一个搜索,关键词“广州 PHP 培训”。大约有 1,230,000 项符合的结果。在百度上搜索相同的关键字,大约有 38,500 项符合的结果。
其中呢,“多迪”培训是占了大多数的,然后就是“慧的”培训。其实这两家都是老熟人了。 (more…)
这个其实是源于 javaeye 上的这个讨论:http://www.javaeye.com/post/886707。最开始吸引我的是在 rails 板块上诸多专业玩 java 和 ruby 的人是如何评价 php 以及 php 框架的。在讨论中发现有一些值得学习和借鉴的地方。所以推荐大家完整阅读这个帖子。从技术性、知识面和娱乐性来讲,都是质量很高的。
我就简单说一下我对于 php 框架繁荣的看法: (more…)
以前分析过 Zend Framework 1.0 的 Zend_Loader;php 内建函数 is_readable 本质上就是调用 filestat.c 的 php_stat 函数,这个在前几天关于 file_exists 和 is_file 的那个 post 中有说过。
今天在群上跟番茄吹水,说起来这个东西。于是又混一篇小记随便吹吹。
以下所有内容,45%是吹水,45%是猜测,10%是从代码中看出来的。 (more…)
首先,写本文的原因是看到番茄的这个 post:http://www.tblog.com.cn/archives/675
我没有重新测试,对于番茄的测试,我觉得绝对靠谱。
But why?
于是打开 php 的代码寻找到了 is_file 和 file_exists 的实现。其实原因简单到让人无法相信! (more…)
最近在浏览同事之前写的代码的时候,发现大量的变量引用使用在 foreach 中:
$a = array( ‘a‘, ‘b‘, ‘c‘, ‘d‘); foreach($a as &$v) { $v = $v . ‘_bar‘; } var_dump($a);