Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Cancellare gli elementi di un array

    E' possibile che una volta liberata una variabile con il comando unset($variabile) dove il tipo di dato di $variabile è un array con più di 20000 indici, la memoria dello script che ho lanciato resti occupata come se non avessi eseguito il comando?

    C'è forse un'altro sistema per liberare memoria di un array?

    Grazie.

  2. #2
    Utente di HTML.it L'avatar di Avalox
    Registrato dal
    Nov 2003
    Messaggi
    302
    per pura curiosità... hai provato a fare un ciclo e cancellare ogni singolo elemento dell'array con unset?

  3. #3
    Cancellando il singolo elemento con unset resta valorizzato comunque l'array, perchè printando l'array con print_r(); vedo tutti gli elementi.

    Io sto facendo girare lo script su Linux, provando su windows con la stessa versione di php 4.3.8 il problema non si verifica la memoria viene liberata, io sto provando con uno script di test sotto riportato, ci sono altre opinioni a riguardo?

    <?

    while(true){
    print "Begin for \n";
    for($x=0; $x<100000; $x++){
    $array_contenitore1[$x]="aaaaaaa";
    }

    print "End for \n";
    unset($array_contenitore1);
    print_r($array_contenitore);
    print "Free memory";
    sleep(60);
    }
    ?>


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.