$myStr = '';
for ($i = 0; $i<999500; $i++) {
$myStr .= chr(rand(0,127));
}
echo round(memory_get_usage()/1024/1024,2) . ' Mb';
I got 1.27 Mb
$myStr = '';
for ($i = 0; $i<999500; $i++) {
$myStr .= chr(rand(0,127));
}
$myStr2 = &$myStr;
echo round(memory_get_usage()/1024/1024,2) . ' Mb';
I save myStr to myStr2 By reference, and I got 1.27 Mb
$myStr = '';
for ($i = 0; $i<999500; $i++) {
$myStr .= chr(rand(0,127));
}
$myStr2 = $myStr;
echo round(memory_get_usage()/1024/1024,2) . ' Mb';
$myStr2 = $myStr also I got 1.27 Mb. What's going on? Why I got 1.27 Mb, instead 2.54 Mb?