我的PHP memory_limit是64M(开始时相当高)
我在我的PHP代码中调用了MongoCollection :: findOne(),我在MongoId中"找到一个".它适用于大多数情况.但是在某些情况下,它会导致PHP超过64M的memory_limit.
Mongo中的数据记录最大为3.5MB,因为Mongo不允许超过4MB.
当我在调用findOne()之前运行memory_get_usage()时,它只有大约4MB.所以findOne()似乎消耗了其他60MB +.这是内存泄漏还是我在Mongo中存储的方式存在设计缺陷?
我的PHP Mongo驱动程序是最新的1.26
我想在使用open打开文件时获取返回资源的系统文件描述符.我假设描述符是一个INT值,通常在/ dev/fd /内
我知道我可以通过执行以下操作来读取描述符:
fread("php://fd/$descriptor", $buflen);
Run Code Online (Sandbox Code Playgroud)
但现在我想获取由PHP fopen()打开的资源的描述符.有办法吗?
我在PHP的Zend Framework中为我的应用程序编写了一些小型库(一堆类).我也一直在库的方法本身捕获这些异常并将它们记录到文件中.
然后我突然遇到了一个问题,即我的主要应用程序使用这些库不会因为错误而退出,即使在我希望它们因致命错误而退出的情况下也是如此.这个问题是下面的代码一直执行到最后 - 它不应该有.
看起来捕获并且可能记录库类中的大多数错误(特殊情况除外)似乎不是一个好习惯.他们应该总是抛出错误吗?这是一个正确的假设吗?
如果有人能为我解答,我会很感激.