2017-09-21 7 views
4

あなたがPHP文字列内のvarを更新できますか?

$a = 'World' 

$str = 'Hello '.$a 

$a = ' John Doe' 

を持っている場合は$strは今$aから変更された値を受け取ることになることをPHPでの方法はありますか?私が好きだろうか$str = 'Hello World'、::$str = 'Hello John Doe'

私はこれがstr_replaceで古い値を置き換えることによって行うことができますが、これvarは渡すことができること方法がある場合、私はお願いしたいと思います知っている私は私が手を知って何 参照または何かによって。

+0

で基準を使用することができます。どのような目的にこれを必要としますか?私にはXYの問題のように聞こえる。 – Qirel

+0

あなたが聞こえるほど簡単ではないと思います。文字列は "done"で2行目に固定されています。新しい文字列に変更を加えなければなりません。 – Andreas

+0

@Qirel私が何かばかげて尋ねると、すみません。私は単純にphpがSQLの準備文を提供して以来、単純な文字列に対しても同様のことが達成できると考えました。 – CMA

答えて

8

一言で言えば、文字列を設定したら、その文字列を設定します。それはそのようなものの引数で縛られることはありません。それは時に実行を参照してください

のHello World

こんにちはジョン・ドウ

$formattedString = "Hello %s".PHP_EOL; 
$possibleValues = [ "World", "John Doe" ]; 

foreach ($possibleValues as $value) { 
     printf($formattedString, $value); 
} 

プリント:

人々は、このようなことのためにフォーマットされた文字列を使用する傾向があります: http://sandbox.onlinephpfunctions.com/code/a9e8e7c71058b1e9a9212fbb398f9c40d20881b5

+2

ありがとう! ...私はこれを受け入れるために8分待たなければなりません:D – CMA

+2

@CMAをsidenoteとして印刷する必要はありませんが、変数として保存する必要がある場合は[sprintf](http:// php .net/manual/en/function.sprintf.php) – apokryfos

+0

もう一度これもありがとうございました! – CMA

0

は、あなたはそれがそのように使用されています後にあなたが前の値を変更することはできません変数$

$a = 'World'; 
$ra = &$a; 
$str = 'Hello '.$ra; 
$a = ' John Doe'; 
+1

'echo $ str'を実行しても、出力として" Hello World "が得られます。 – Luke

関連する問題