Heim  >  Artikel  >  Backend-Entwicklung  >  亲自证验php session和array的容量大小是跟php配置的内存大小来控制的

亲自证验php session和array的容量大小是跟php配置的内存大小来控制的

WBOY
WBOYOriginal
2016-06-13 10:56:45714Durchsuche

亲自验证php session和array的容量大小是跟php配置的内存大小来控制的

今天搞完一个功能后,由于用到了比较多的数组,所以兴致勃勃的想搞清楚php的array和session的容量到底有多大,其实主要是想验证一下之前我听说的array的容量是跟配置有关这一说法的正确性。

         array的验证代码程序:

        $arr=array();//这一行可以省去的,我是比较奉行java中的先声明后使用原则
       for ($i=0;$i  $arr[$i]=$i;
        }

 echo count($arr);
unset($arr);

           session的验证代码程序:

                         ession_start();  
for ($i=0;$i$_SESSION[$i]=$i;
}

echo count($_SESSION); 

运行上面的程序后,会出现下面的错误提示:

注:此时我php.ini中memory_limit值的配置是10M



然后 接下来我的验证方法是把php.ini中memory_limit的值改为1000M,然重启apache,再次运行上面的验证程序,则可以正常输出array和session的大小值。


难道不是我修改了php.ini的原因,是其他巧合问题导致的正常?我要再次验证一下是不是php.ini中memory_limit配置的原因,我把该值重新配置为10M,重启apache后,然后再次运行上面的验证程序,结果的确又报上面的内存不足异常了。现在我相信了array和session的容量大小的确是跟php.ini中memory_limit的配置有关的。
不过我最大的一次配置该值的大小为1300M,运行验证程序后我的电脑几乎处于休眠状态,呵呵,下面是性能占用图:


以上仅为我的个人验证观点,仅为分享使用,验证方法肯定存在不足,所以请大家指导,非常感谢。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn