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

    errore causato da variabile

    Ciao a tutti!
    Mi rivolgo a voi dopo essermi scervellato a lungo su un problema che trovo assolutamente assurdo.
    Vi descrivo la situazione:
    ho un array multidimensionale $users, con un numero variabile di dimensioni che si agirano sule 3, 4.
    Ho necessità di effettuare modificare con una funzione su ogni variabile della seconda dimensione: fin qui tutto OK:
    Codice PHP:
    <?php
    foreach($users as $usId=>$usr)
    {
    foreach(
    $usr as $uId=>$unt)
    {
    $unt funzione($unt);
    $usr[$uId]=$unt;
    }
    $users[$usId]=$usr;
    }
    Il problema è che, non capisco come mai, l'ultimo indice di $users viene eliminato, anche se la funzione non effettua alcuna modifica.

    Scusate se mi sono dilungato, ma preferisco dirvi tutto, semmai mi fosse sfuggito qualcosa.

    La cosa assurda è che anche scrivendo
    Codice PHP:
    $unt $unt
    Il problema si ripresnta ugualmente, anche se sono sicuro che il problema stà esattamente in quella riga, infatti, scrivendo semplicemente
    Codice PHP:
    $unt
    Tuto funziona perfettamente.
    Non so proprio dove sbatere la testa! Mi appelo alla vostra esperienza.
    Grazie in anticipo!

  2. #2
    Cosa significa "viene eliminato"? Quel codice mi sembra corretto, anche se ti conviene dare un'occhiata a http://it.php.net/array_walk

  3. #3
    nel senso che è come se venisse unsettato. Avevo già considerato array_walk, ma, oltre alla funzione che prende come argomneto l'indice dell'array, devo compiere altre operazioni, come assegnare il valore dell'indice a una variabile, in ogni caso, sono sicuro che queste operazioni non possono influire sul problema.
    Non capisco proprio come possa succedere una cosa simile!

  4. #4
    Ho risolto: ho trasformato il foreach in for, ora tutto funzioan perfettamente.
    misteri del php...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.