PHP에 데이터를 저장하는 한 가지 방법은 내가 변경할 수 있는 양입니다. 이 방법은 데이터를 저장할 수 있는 메모리에 공간을 열고 이 공간에 이름을 지정하는 것입니다. 변수라고 합니다. 이 값은 작업 중에 변경될 수 있습니다
현재 공간의 이름을 변수 이름으로 하고, 현재 공간에 있는 데이터(8개 데이터 유형)를 변수 값이라고 합니다
예: (추천 학습 : PHP 비디오 튜토리얼)
php 버전은 7.2
<?php echo memory_get_usage() , '<br>'; $start = memory_get_usage(); $a = Array(); for ($i=0; $i<1000; $i++) { $a[$i] = $i + $i; } $mid = memory_get_usage(); echo memory_get_usage() , '<br>'; for ($i=1000; $i<2000; $i++) { $a[$i] = $i + $i; } $end = memory_get_usage(); echo memory_get_usage() , '<br>'; echo 'argv:', ($mid - $start)/1000 ,'bytes' , '<br>'; echo 'argv:',($end - $mid)/1000 ,'bytes' , '<br>'; echo 'Memory:', ($mid - $start)/1024 ,'k' , '<br>'; echo 'Memory:',($end - $mid)/1024 ,'k' , '<br>'; 输出是: 389336 418056 442632 argv:28.72bytes argv:24.576bytes Memory:28.046875k Memory:24k
현재 PHP 스크립트에 할당된 메모리 양을 바이트 단위로 반환합니다.
1000개의 요소로 구성된 정수 배열에는 28k의 메모리가 필요하며 각 요소는 평균 28바이트를 차지합니다.
memory_get_usage() 반환된 결과는 배열이 모두 차지하지는 않지만 일부 PHP도 포함합니다
자체 실행 할당된 일부 구조의 경우 내장 함수에 의해 생성된 배열이 실제 공간에 더 가까울 수 있습니다.
<?php $start = memory_get_usage(); $a = array_fill(0, 10000, 1); $mid = memory_get_usage(); //10k elements array; echo 'argv:', ($mid - $start )/10000,'byte' , '<br>'; echo 'Memory:', ($mid - $start)/1024 ,'k' , '<br>'; $b = array_fill(0, 10000, 1); $end = memory_get_usage(); //10k elements array; echo 'argv:', ($end - $mid)/10000 ,'byte' , '<br>'; echo 'Memory:',($end - $mid)/1024 ,'k' , '<br>'; 得到: argv:54.5792byte argv:54.5784byte argv:39.736byte Memory:388.046875k argv:39.736byte Memory:388.046875k
10,000개 요소의 정수 배열에는 388k의 메모리가 필요한 것으로 대략 이해됩니다. 하나의 배열 요소는 약 39바이트를 차지합니다.
위 내용은 변수가 PHP에서 메모리를 차지합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!