Как я использую одинарные кавычки в одинарных кавычках?

Кто-либо может объяснить, как заставить этот код работать?

echo '<div id="panel1-under">Welcome <?php echo "$_SESSION['username']"; ?></div>';

Я попытался удалить одинарные кавычки (echo '<div id="panel1-under">Welcome <?php echo "$_SESSION[username]"; ?></div>';), но это не работает.

10
задан kiamlaluno 9 February 2016 в 20:43
поделиться

5 ответов

echo "<div id=\"panel1-under\">Welcome ".$_SESSION['username']."</div>";

или

echo '<div id="panel1-under">Welcome '.$_SESSION['username'].'</div>';

Краткое объяснение:

  • Вам не нужно повторно открывать теги внутри эхо-строки ("...")
  • Я здесь передал строку " Добро пожаловать " объединен с $ _ SESSION ['username'] и " » (что делает оператор.)
  • PHP даже достаточно умен, чтобы обнаруживать переменные внутри PHP строка и оцените их:

    $ variablename = "Эндрю";

    echo "Привет, $ variablename, добро пожаловать";

=> Привет, Эндрю, добро пожаловать

Дополнительная информация: PHP.net - echo

11
ответ дан 3 December 2019 в 14:33
поделиться

Вам необходимо объединить ваши строки и переменные.

echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
6
ответ дан 3 December 2019 в 14:33
поделиться

Расширение переменной не работает внутри одинарных кавычек .Вы можете сделать либо:

echo "<div id=\"panel1-under\">Welcome {$_SESSION['username']}</div>";

, либо

echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
5
ответ дан 3 December 2019 в 14:33
поделиться

Вообще говоря, чтобы использовать одинарную кавычку внутри строки, которая использует одинарную кавычку в качестве разделителя, просто экранируйте одинарную кавычку внутри строки

echo 'That\'s all, folks';

Однако неясно, какова цель вашего кода.

echo '<div id="panel1-under">Welcome <?php echo "$_SESSION['username']"; ?></div>';

Поскольку вы уже используете код PHP, не нужен. Если вы пытаетесь вывести только содержимое переменной сессии, то можно использовать

echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
3
ответ дан 3 December 2019 в 14:33
поделиться

В одинарных кавычках имена переменных не анализируются, как если бы они были заключены в двойные кавычки. Если вы хотите использовать здесь строки в одинарных кавычках, вам нужно использовать оператор конкатенации строк , , . :

echo '<div id="panel1-under">Welcome <?php echo "'.$_SESSION['username'].'"; ?></div>';

Между прочим: ответ на вопрос в заголовке состоит в том, что для использования буквальной одинарной кавычки внутри одинарной кавычки вы экранируете одинарную кавычку, используя обратная косая черта:

echo 'Here is a single-quote: \'';
8
ответ дан 3 December 2019 в 14:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: