您的位置:

包含php的memory的词条

本文目录一览:

PHP管理内存函数 memory_get_usage()使用介绍

下面是PHP

memory_get_usage()使用示例:

复制代码

代码如下:

echo

memory_get_usage(),

'br

/';

//143952

$tmp

=

str_repeat('',

4000);

echo

memory_get_usage(),

'br

/';

//232048

unset($tmp);

echo

memory_get_usage();

//143952

上面的程序后面的注释代表了它们的输出(单位为

byte(s)),也就是当时

PHP

脚本使用的内存(不含

memory_get_usage()

函数本身占用的内存)

由上面的例子可以看出,要想减少内存的占用,可以使用

PHP

unset()

函数把不再需要使用的变量删除。类似的还有:PHP

mysql_free_result()

函数,可以清空不再需要的查询数据库得到的结果集,这样也能得到更多可用内存。

PHP

memory_get_usage()还可以有个参数,$real_usage,其值为布尔值。默认为

FALSE,表示得到的内存使用量不包括该函数(PHP

内存管理器)占用的内存;当设置为

TRUE

时,得到的内存为包括该函数(PHP

内存管理器)占用的内存。

所以在实际编程中,可以用PHP

memory_get_usage()比较各个方法占用内存的高低,来选择使用哪种占用内存小的方法。

常用的检测:

用microtime函数就可以分析程序执行时间

memory_get_usage可以分析内存占用空间

SQL的效率可以使用打开慢查询查看日志分析

SQL

找到有瓶颈的使用EXPLAIN

来分析

如何修改PHP的memory

找到解决方法: php.ini配置文件

中有三处地方需要改动: upload_max_filesize memory_limit post_max_size

这三个值都根据实际情况改下,重启服务器以后,虽然导入时仍然显示是 最大限制:2,048 KB) ; 但实际上已经可以导入很大的数据库了。。。

如何获知PHP程序占用多少内存memory

PHP性能优化过程中需要获取PHP内存消耗,使用memory_get_usage()函数可获取当前的内存消耗情况,函数使用简单,这里讨论一下memory_get_usage()函数的用法与实例

三,基础用法与实例

1,获取当前的内存消耗量

复制代码代码如下:

?php

echo memory_get_usage();

$var = str_repeat("liuhui", 10000);

echo memory_get_usage();

unset($var);

echo memory_get_usage();

?

分别输出:62328 122504 62416

说明:memory_get_usage()函数输出的数值为bytes单位

2,格式化memory_get_usage()输出

复制代码代码如下:

?php

function convert($size){

$unit=array('b','kb','mb','gb','tb','pb');

return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];

}

echo convert(memory_get_usage(true));

?

输出:256 kb

3,自定义函数获取数组或变量值大小

复制代码代码如下:

?php

function array_size($arr) {

ob_start();

print_r($arr);

$mem = ob_get_contents();

ob_end_clean();

$mem = preg_replace("/\n +/", "", $mem);

$mem = strlen($mem);

return $mem;

}

$memEstimate = array_size($GLOBALS);

?

phpstorm一直出现out of memory怎么解决

CF出现out of memory指的是系统物理内存不足,这时候如果继续玩会对电脑有损伤。可以通过以下步骤解决: 打开运行窗口,可以快捷键"WIN+R"打开,输入“cmd”,然后点开。 输入“BCDEdit /set PAE forceenable Windows”指令,按回车。 再输入“Bcdedi

如何增加PHP的内存memory

memory_limit = 128M ;

在php的配置文件:php.ini里面有怎么一个成熟,应该可以设置。大约在306行左右。

在php.ini中把memory_limit改成256M了,都重启服务器了,在phpinfo()中还是显示128M,是怎回事?

看看你修改的php.ini位置与phpinfo()下的Loaded Configuration File路径是否一致 这个php.ini是你服务器下的php.ini而不是php中的php.ini