为什么memory_get_usage()会在一行代码中使用这么多内存


Why does memory_get_usage() get so much memory used with a single line of code?

我开始担心内存的使用,所以我决定插入memory_get_usage()来检查我的页面使用了多少内存。我最终在一页中获得了将近16MB的容量。但最奇怪的是,我制作了一个页面来测试这一点,而一个包含以下代码的页面需要超过15MB:

Total memory used: <?php echo memory_get_usage(); ?>

这一行使用了15072216个内存。

我在其他页面中看到,最初分配一些内存是正常的。。。大约30万。但我分配的内存大约是这个数字的40倍。内存使用量是否在正常限制范围内,或者我应该联系网络主机管理员?我使用的是带有php 5.2的000webhost.com。*

这是因为PHP总是加载它的所有扩展,而不知道需要哪一个(如果有的话)。因此,安装的额外功能越多,每次执行脚本时PHP分配的内存就越多。