- Home
- Categorie
- Coding e Sistemistica
- PHP
- Stampare una variabile dentro un'altra variabile
-
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
-
ciao,
è molto semplice:$nome="Pippo";
$stringa= "Benvenuto " . $nome;
echo $stringa;in php il punto è l'operatore di concatenazione di stringhe.
ciao
-
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?
-
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 friendsspero di aver capito bene la tua esigenza...
ciao,
-
Perfetto, bastava quel semplice str_replace! Certe volte il cervello va in panne dopo mesi di programmazione
Grazie per l'aiuto, alla prossima
-
prego,
buona giornata
-
Grazie, anche a te!