Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    2 variabili x 1 variabile

    'giorno,

    come posso fae una cosa del genere...

    devo ottenere il valore di varibili tipo

    $var_1
    $var_2
    $var_3
    ecc,ecc

    vorrei per non scrivere 100 volte la medesima cosa, creare un ciclo for...e ottenere dal ciclo la stessa cosa, ho provato con $var_.$i dove $i e la variabile d'incremento del ciclo, ma con scarsi risultati, in parole povere come posso rendere dinamico il nome di una variabile.

    se concateno due stringhe funziona così com'è ma nelle variabili è un tantino diverso, sapete darmi una dritta ?

    Grazie

  2. #2

    Re: 2 variabili x 1 variabile

    Originariamente inviato da serialkiller
    'giorno,

    come posso fae una cosa del genere...

    devo ottenere il valore di varibili tipo

    $var_1
    $var_2
    $var_3
    ecc,ecc

    vorrei per non scrivere 100 volte la medesima cosa, creare un ciclo for...e ottenere dal ciclo la stessa cosa, ho provato con $var_.$i dove $i e la variabile d'incremento del ciclo, ma con scarsi risultati, in parole povere come posso rendere dinamico il nome di una variabile.

    se concateno due stringhe funziona così com'è ma nelle variabili è un tantino diverso, sapete darmi una dritta ?

    Grazie
    usa eval!

    eval('$var_'.$ciclo.' = '.$valore);

    Naturalmente questa operazione è la più adatta ma anche la meno sicura!

    Se hai in $valore per esempio ci fosse:

    'aaa'; print 'sei stupido!;

    allora php eseguirebbe queste due operazioni:

    $var_1 = 'aaa';
    e
    print 'sei stupido';

    TI lascio immaginare!

    Quindi stai attento al contenuto e parsalo attentamente... Ciao!

    http://it.php.net/eval
    PaTeR
    From Ban to Life

  3. #3
    ci provo

    grazie infinite

  4. #4
    credo di non aver capito una cippa

    se io ho

    for($a=1;$a!=11;$a++){

    if(in_array($foto_.$a, $final)){echo 'pippo';}

    }

    così non funziona, come dovrei usare eval?


  5. #5
    Originariamente inviato da serialkiller
    credo di non aver capito una cippa

    se io ho

    for($a=1;$a!=11;$a++){

    if(in_array($foto_.$a, $final)){echo 'pippo';}

    }

    così non funziona, come dovrei usare eval?

    for($a=1;$a!=11;$a++){

    eval('if(in_array($foto_'.$a.', $final)){echo "pippo";}'

    }

    dovrebbe andare...
    PaTeR
    From Ban to Life

  6. #6
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    for($a=1;$a!=11;$a++){

    if(in_array(${'foto_'.$a}, $final)){echo 'pippo';}

    }

  7. #7

    Array

    Se ho capito bene, ciò di cui hai bisogno è un array... una cosa che in Pascal (!) si indica con x[], dove, tra parentesi, puoi indicare [1],[2],[3]...
    Giusta l'idea del ciclo for e dell'assegnazione del valore del contatore (un classico!)
    Nel ciclo assegna in questo modo: $var[$i]=...

    Spero di averti aiutato "giustamente"!
    Tom

  8. #8
    scusate il ritardo ma sono stato via

    dunque...

    @chris
    quello se non erro è il metodo di controllo se una tal variabile è presente in un array, e non è quello che mi serve, ma sicuramente mi sono spiegato male io

    @PaTeR non PeTeR
    stesso discorso

    @tommyacoustic19
    e pensare che pascal al tempo l'ho anche studiato, devo provare e vedere se realmete fa quello che mi serve

    una domanda: $var[$i] sta a una cosa tipo $var1 ?

    se dovessi formare le variabili tipo $var_1 come mi approcio ?
    $var_[$i] ?

    Grazie ancora a tutti
    SK

  9. #9
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ti o dire solo questo

    $var[$i] non è $var1 ma

    $var[1]

    che sono cse completamente diverse
    il primo è una variabile il secondo
    un array o meglio un elemento
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  10. #10
    Originariamente inviato da ciro78
    ti o dire solo questo

    $var[$i] non è $var1 ma

    $var[1]

    che sono cse completamente diverse
    il primo è una variabile il secondo
    un array o meglio un elemento
    infatti...

    quindi come ho detto prima non mi sono spiegato bene

    ci riprovo

    mettiamo di dover fare una determinata operazione su + variabili similari, tipo appunto $var_1, $var_2, $var_3, $var_4, ecc,ecc

    per eseguire determinati controlli od operazioni bisogna scriverle a manina santa tot volte quante sono le variabili, per capirci

    es.
    if($var_1 != 0){echo 'pippo';}
    if($var_2 != 0){echo 'pippo';}
    if($var_3 != 0){echo 'pippo';}
    if($var_4 != 0){echo 'pippo';}
    ecc,ecc.....

    quindi codice a gogo senza senso secondo me, quindi mi chiedevo se fosse possibile utilizzare un ciclo tipo

    io ipotizzavo...

    for($i=1;$i<10;$i++){
    if($var_.$i != 0){echo 'pippo';}
    }

    ma non funziona a quanto pare il concatenamento $pippo.$pluto = $pippopluto

    quindi mi chiedevo, visto che così non funziona, se esiste un metodo per ottenere questa cosa e non dover scrivere 10-20-100 volte la stessa cosa (rendendola tra le altre cose non dinamica), tipo appunto un ciclo ma riuscenda a creare il nome della variabile dinamicamente, componendolo





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.