站长论坛

标题: php memcache 客户端的一个隐秘问题 [打印本页]

作者: superadmin    时间: 2009-7-26 22:53
标题: php memcache 客户端的一个隐秘问题
发现用 php 的 memcache 扩展的时候,没有区分键里的 “_” 和 “ ” 。想起来 memcache 协议里,键是不能用空白的,一定是 php 的客户端做了什么处理。去看了下源代码,果然……

#define MMC_PREPARE_KEY(key, key_len) \
    php_strtr(key, key_len, "\t\r\n ", "____", 4); \

php 默默地就把这些个空白字符给替换掉了,而且这个替换操作没在手册里提到。用不会引起歧义的方式替换或者干脆抛一个错,不给用带空白的字符做键都会更好。就这么不做声地替换了很可能就会引起一些隐秘的错误




欢迎光临 站长论坛 (http://www.tzlink.com/bbs/) Powered by Discuz! X3.2