Если у меня есть переменная $ var в этой строке: echo "Hello, there are many $vars";
Php ищет variable $vars
вместо $var
.
Без конкатенации вроде: "Hello, there are many $var" . "s";
"Hello, there are many $var" . "s";
есть ли другой способ сделать это, как какой-то ускользающий персонаж?
В php вы можете избежать таких переменных
echo "Hello, ${var}'s head is big";
или как
echo "Hello, {$var}'s head is big";
Ссылка здесь в разделе escape character
Вы можете использовать {}
чтобы избежать вашей переменной. Рассмотрим следующий пример:
echo "There are many ${var}s"; #Or... echo "There are many {$var}s";
Рабочий пример
Лично я всегда разделяю переменные из строки следующим образом: echo 'Hello, there are many '.$var.'s';
В основном из-за удобочитаемости, если вы просматриваете свой код, сразу становится ясно, где находятся переменные.
В качестве альтернативы вы можете посмотреть sprintf: http://php.net/manual/en/function.sprintf.php
Функция sprintf позволяет вам форматировать любой тип переменной в виде строки в определенной нотации.