ok, ho fatto un test on-line, sembrerebbe che venga passato come reference a $GLOBALS, questo su PHP5.
esempio utilizzato:
codice:
<?php
// file musage.php
$startMem = memory_get_usage();
$output = 'Memoria iniziale: '.$startMem;
$__urltodo = Array();
$__url2id = Array();
for( $i=0; $i<25000; $i++ ) {
$__url2id[$i.'ciaociao'] = $i;
array_push( $__urltodo, $i.'ciaociao' );
}
$endMem = memory_get_usage();
$output .= '
Memoria finale: '.$endMem;
echo $output.'<hr />Memoria utilizzata: '.( $endMem - $startMem );
?>
codice:
<?php
// file mglobal.php
$startMem = memory_get_usage();
$output = 'Memoria iniziale: '.$startMem;
$__urltodo = Array();
$__url2id = Array();
for( $i=0; $i<25000; $i++ ) {
$__url2id[$i.'ciaociao'] = $i;
array_push( $__urltodo, $i.'ciaociao' );
}
global $__urltodo;
global $__url2id;
$endMem = memory_get_usage();
$output .= '
Memoria finale: '.$endMem;
echo $output.'<hr />Memoria utilizzata: '.( $endMem - $startMem );
?>