Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    154

    Inizializzare variabili con foreach array

    Ciao a tutti,

    io ho un array così:
    Codice PHP:
    productCategory => Cioccolatini
    productPhoto 
    => undefined
    productName 
    => Bacio Perugina
    productMaterial 
    => Cioccolata
    productPrice 
    => 10.00 
    Nella mia ingenuità di principiante , vorrei poter inizializzare productCategory, productPhoto, ecc... come variabili; ho provato così:
    Codice PHP:
        $myArray explode("&"$myArray);

            foreach(
    $myArray as $key => $value){
                    
    $value explode("="$value);

                    
    $value[0] = '$' $value[0];
                    
    //echo $value[0]  . ' => ' . $value[1] . '
    ';
            } 
    Ma naturalmente non funziona. Qualcuno sa dirmi come potrei fare? Grazie mille.

  2. #2
    Non ho capito cosa vuoi fare.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    154
    Eh eh, mi sono spiegato male Dunque vorrei che $value[0] dell'array, con valore productCategory divenisse la variabile inizializzata $productCategory con il valore $value[1].

    Come si può fare?

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    io ancora non ho ben capito... puoi fare un esempio con un singolo valore? inoltre parli sempre di "array", ma nel tuo snippet usi "explode" per spezzare una stringa... forse hai i valori elencati come lista-parametri?

  5. #5
    Puoi fare una cosa del genere:

    Codice PHP:
    $myArray explode("&"$myArray);
    $result = array();
    foreach(
    $myArray as $key => $value){
        
    $value explode("="$value);
        
    $result[$value[0]] = $value[1];
    }
    var_dump($result); 
    non avrai le variabili singole, ma un array associativo le cui chiavi sono i nomi estratti.

    P.S.
    Se, come sembra, stai parserizzando una querystring ti consiglio di dare un'occhiata alla funzione parse_url()
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    154
    Ok, io ho questa stringa:
    "productCategory=Cioccolatini&productPhoto=undefin ed&productName=Bacio Perugina&productMaterial=Cioccolata&productPrice=1 0.00"

    Faccio l'explode ed ottengo:
    codice:
    productCategory=Cioccolatini 
    productPhoto=undefined 
    ....
    Dunque io vorrei che productCategory mi diventi una variabile inizializzata ($productCategory) con valore = Cioccolatini.

  7. #7
    Originariamente inviato da satifal
    Puoi fare una cosa del genere:

    Codice PHP:
    $myArray explode("&"$myArray);
    $result = array();
    foreach(
    $myArray as $key => $value){
        
    $value explode("="$value);
        
    $result[$value[0]] = $value[1];
    }
    var_dump($result); 
    non avrai le variabili singole, ma un array associativo le cui chiavi sono i nomi estratti.

    P.S.
    Se, come sembra, stai parserizzando una querystring ti consiglio di dare un'occhiata alla funzione parse_url()
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    154
    Ok, risolto così:
    Codice PHP:
        parse_str($myArray$myArray);
        
    extract($myArrayEXTR_SKIP);
        echo 
    $productCategory;
        echo 
    $productPhoto

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.