Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Differenze array

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    110

    Differenze array

    Salve ragazzi qualcuno può spiegarmi qual è la differenza tra le seguenti righe di codice:

    Codice PHP:
    $_SESSION['comm'] []= $_POST['id'
    Codice PHP:
    $_SESSION['comm']= $_POST['id' 

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Nel primo caso $_SESSION['comm'] contiene un array, nel secondo una variabile semplice.

    Prova a stamparli con
    print_r($_SESSION['comm']);

    vedi cose ti viene fuori.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    110
    Grazie per avermi risposto. Dunque vediamo se ho capito bene..

    Nel primo caso posto che $_POST ['id'] assuma i valori di 1,2,3,4,5,6 ho

    $_SESSION['comm'] [0]= 1;
    $_SESSION['comm'] [1]= 2;
    $_SESSION['comm'] [2]= 3;
    $_SESSION['comm'] [3]= 4;
    $_SESSION['comm'] [4]= 5;
    $_SESSION['comm'] [5]= 6;

    Insomma ho un array mulrimediale. Nel secondo caso ho un semplice array

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Sì, partendo dal presupposto che $_SESSION è già di per se un array sì, nel primo caso hai un array multidimensionale, nel secondo un array semplice.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    110
    Grazie. Ultima cosa..Un array multimediale può essere scritto anche in questo modo:

    $mioarray=array(

    array('id'=>1),
    array('id'=>2),
    array('id'=>3),
    array('id'=>4)
    );

    Dovessi convertire l'array di cui sopra sarebbe possibile scrivere:

    $_SESSION=array(

    comm('id'=>1),
    comm('id'=>2),
    comm('id'=>3),
    comm('id'=>4)
    );

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Si dice multidimensionale, non multimediale.

    $mioarray va bene, ma $_SESSION no, comm('id'=>1) e seguenti non sono istruzioni php valide.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    110
    Si scusami piccolo lapsus... multidimensionale. E per fare $_SESSION come $mioarray come dovrei scrivere?

  8. #8
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    $_SESSION è un array associativo, ad ogni chiave devi dare un nome, quindi non puoi farlo come $mioarray.

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    110
    Nel manuale dice che il seguente:

    $items=array(

    array('id'=>1, 'desc'=>'Prodotto 1','prezzo'=>500),
    array('id'=>2, 'desc'=>'Prodotto 2','prezzo'=>290),
    array('id'=>3, 'desc'=>'Prodotto 3','prezzo'=>80),
    array('id'=>4, 'desc'=>'Prodotto 4','prezzo'=>150)
    );

    è un array associativo di tre oggetti. Quindi è un array associativo come l'altro solo che gli cambia forma

  10. #10
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Array associativo vuol dire che le chiavi hanno dei nomi, sono delle stringhe, non dei numeri, tutto qua.

    Nel caso che hai proposto ora, $items non è un array associativo, perché ogni "sottoarray" sarà identificato da un numero, li chiami con $items[0], $items[1]...
    Mentre sono array associativi i "sottoarray", hanno come chiavi delle stringhe: id, desc e prezzo.

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.