+ Rispondi alla Discussione
Risultati da 1 a 7 di 7

Stampare una variabile dentro un'altra variabile

Ultimo Messaggio di Protone86 il:
  1. #1
    User
    Data Registrazione
    Jan 2010
    Messaggi
    499

    Stampare una variabile dentro un'altra variabile

    Ciao a tutti,

    ho un problema apparentemente semplice ma che a quanto pare non lo è.

    Ho questa situazione:
    $nome="Pippo";
    $stringa= "Benvenuto $nome";
    echo $stringa;

    Restituisce questo: Benvenuto $nome;
    A me interessa ovviamente che restituisca questo: Benvenuto Pippo. Come posso risolvere la cosa?

    Grazie a tutti

  2. #2
    User L'avatar di Panebianco3d
    Data Registrazione
    Nov 2011
    Località
    Pescara
    Messaggi
    187
    Segui Panebianco3d su Twitter Aggiungi Panebianco3d su Linkedin
    ciao,
    è molto semplice:

    $nome="Pippo";
    $stringa= "Benvenuto " . $nome;
    echo $stringa;

    in php il punto è l'operatore di concatenazione di stringhe.

    ciao
    Gianluca Panebianco - panebianco3d.com

  3. #3
    User
    Data Registrazione
    Jan 2010
    Messaggi
    499
    Ciao, grazie innanzitutto per la risposta

    Il problema è che non ho la possibilità di concatenare le stringe come da te logicamente detto. In pratica tutte le stringhe sono salvate in un database per via della traduzione del sito in 4 lingue. Quindi se ho una stringa tipo "Amici di Pippo" in inglese verrà fuori "Pippo's friends" il che significa in PHP quanto segue:
    $nome="Pippo";
    $stringa="Amici di $nome";
    echo $stringa;

    Hai altri suggerimenti?

  4. #4
    User L'avatar di Panebianco3d
    Data Registrazione
    Nov 2011
    Località
    Pescara
    Messaggi
    187
    Segui Panebianco3d su Twitter Aggiungi Panebianco3d su Linkedin
    beh, allora la cosa è un po' diversa... comunque si puo' risolvere il problema inserendo dei "placeholders" in modo che tu possa avere le stringhe in lingue differenti dove andrai a sostituire il nome dell'utente. Ovviamente è probabile che dovrai andare a sostituire i record sul db.

    per placeholders intendo che potresti avere sul db le stringhe:

    (italiano) : "Gli amici di ###nome_utente###";
    (inglese) : "###nome_utente###'s friends"

    ammettendo che tu abbia:
    $nome="Pippo"; /* nome dell'utente corrente */

    stringa dalla query che vuoi sostituire con il nome dell'utente:
    $row->userFriends; /* e questa puo' essere sia in italiano che in inglese */

    applichi la sostituzione del placeholder:
    echo str_replace("###nome_utente###", $nome, $row->userFriends);

    il risultato sarà:
    (it) = Gli amici di Pippo
    (en) = Pippo's friends

    spero di aver capito bene la tua esigenza...

    ciao,
    Gianluca Panebianco - panebianco3d.com

  5. #5
    User
    Data Registrazione
    Jan 2010
    Messaggi
    499
    Perfetto, bastava quel semplice str_replace! Certe volte il cervello va in panne dopo mesi di programmazione
    Grazie per l'aiuto, alla prossima

  6. #6
    User L'avatar di Panebianco3d
    Data Registrazione
    Nov 2011
    Località
    Pescara
    Messaggi
    187
    Segui Panebianco3d su Twitter Aggiungi Panebianco3d su Linkedin
    prego,
    buona giornata
    Gianluca Panebianco - panebianco3d.com

  7. #7
    User
    Data Registrazione
    Jan 2010
    Messaggi
    499
    Grazie, anche a te!

+ Rispondi alla Discussione

Tag per Questa Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.