第370行是这样一句: return ucfirst(preg_replace_callback('/_([a-zA-Z])/', function($match){return strtoupper($match[1]);}, $name));居然要分配2.8G内存??
解决方案 »
- apache+php+mysql连接出现root拒绝访问?
- sql解解释
- 为何Ext 中的panel中的grid不显示呢?当点击好几次的时候才出现,而且还是重复的呢?
- 关于使用api提取msn联系人的困惑
- discuz论坛的用户登陆源码问题
- PHP开源项目bugfree配置
- wordpress single 详细页面制作过程:不管点击那个详细页面结果都显示同一个内容 内容及图代码如下
- php读取access表报错
- 来八八美团页面的防采集方法
- 咨询最新的php开发网站的方法
- 求助一个关于DZ论坛回帖类的问题。
- Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result reso
的含义是:
在 1916796928b (1828M) 的可用内存中
申请 3086655745b (2943M)的空间失败显然是待处理的变量 $name 出现了问题清空 Runtime 目录再试试
估计是死循环,不断开辟空间了。
如果你确定是那句的问题,就不要写那么复杂啊啊
$b = preg_replace_callback('/_([a-zA-Z])/', 'aaa', $name)
return ucfirst($b);function aaa($match){
return strtoupper($match[1]);
}可能是由于替换掉_([a-zA-Z]) 然后从头开始找,所以会无限循环,你得让他结束的方法,
比如把_去掉来停止
换别的方案可能可以 preg_replace,preg_match_all,preg_split
------------------
502 Bad Gatewaynginx/1.4.1
你这样做,查看你可控的逻辑流程。
从上面开始,一句句往下添加exit();(当然你可以用二分法找)
直到开启哪一句使得出现这个问题,就是那句错了。
查一下那句用到了什么函数,打印一下变量,看看传参顺序有没有错。
不行的话把那句及附近的代码贴上来让大家帮你看看
http://doc.thinkphp.cn/reference/functions.html
会不会是你版本低了?
然后和官方手册匹配下用法对不对
http://document.thinkphp.cn/manual_3_2.html
版主,你不是碰到和回答过同样问题么?你是不是天天熬夜到2点,达到了过目就忘的能力啊。
问题原因就在于:preg_replace_callback出现内存泄露。在windows下没有问题,在linux下5.4.22,一下有上面问题。所在,TP32在linux用php5.4可能会出现上面问题。
版主,你不是碰到和回答过同样问题么?你是不是天天熬夜到2点,达到了过目就忘的能力啊。
问题原因就在于:preg_replace_callback出现内存泄露。在windows下没有问题,在linux下5.4.22,一下有上面问题。所在,TP32在linux用php5.4可能会出现上面问题。
多谢,和我程序完全没有关系。随便使用下 preg_replace_callback就会出现问题。比如test.php:var_dump(preg_replace_callback('/\w{2}/',function($m)use(&$i){ echo ' i='.$i++; return $m[0]."cc ";},'abcd2acc'));也会出现同样的问题。在国外网站随便一搜索,报告这个bug的人实在是太多了。但一直反复解决了,又反复出现。