@itmalex

Почему не меняется значение переменной в строке?

$a = 0;

    $text = "Hello World {$a}";

    echo $text . "<br>";

    $a = 25;

    echo $text;

//Result
Hello World 0
Hello World 0

Почему? А если мне надо?
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 2
@voiceofnoise
$text = "Hello World {$a}";
Что происходит в этой строке в порядке очереди:
"Вычисляется" правая часть - строка справа равна "Hello World 0".
Переменной $text присваивается полученное значение строки, т.е. $text теперь равна "Hello World 0".

Далее в этой строке
echo $text;
выводится на экран значение переменной $text, значение которой было присвоено выше ($text = "Hello World ".$a;).

Если надо, то можно сделать, например так:
$a = 0;
$text = "Hello World";
echo $text . $a . "<br>";
$a = 25;
echo $text . $a;
Ответ написан
dimastik1986
@dimastik1986
учусь
вынеси переменную за ковычки
$a = 0;
    $text = "Hello World ".$a;
    echo $text . "<br>";

    $a = 25;
    echo $text;

//Result
Hello World 0
Hello World 25
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы