Как использовать одинарные кавычки внутри одинарных кавычек?
Кто-нибудь может объяснить, как заставить этот код работать?
echo '<div id="panel1-under">Welcome <?php echo "$_SESSION['username']"; ?></div>';
Я пытался удалить одинарные кавычки (echo '<div id="panel1-under">Welcome <?php echo "$_SESSION[username]"; ?></div>';
), но это не работает.
6 answers
echo "<div id=\"panel1-under\">Welcome ".$_SESSION['username']."</div>";
Или
echo '<div id="panel1-under">Welcome '.$_SESSION['username'].'</div>';
Краткое объяснение:
- Вам не нужно повторно открывать теги внутри строки echo (" ... ")
- Что я здесь сделал, так это передал строку "Добро пожаловать", объединенную с $_SESSION['имя пользователя'] и "" ( что за. оператор делает)
-
PHP даже достаточно умен, чтобы обнаруживать переменные внутри строки PHP и оценивать их:
$переменное имя = "Эндрю";
Эхо "Привет $переменное имя, добро пожаловать ";
=> Привет, Эндрю, добро пожаловать
Дополнительная информация: PHP.net - эхо
Внутри одинарных кавычек имена переменных не анализируются так, как внутри двойных кавычек. Если вы хотите использовать здесь строки в одинарных кавычках, вам нужно будет использовать оператор конкатенации строк, .
:
echo '<div id="panel1-under">Welcome <?php echo "'.$_SESSION['username'].'"; ?></div>';
Кстати: ответ на вопрос в заголовке заключается в том, что для использования буквальной одинарной кавычки внутри строки в одинарных кавычках вы экранируете одинарную кавычку, используя обратную косую черту:
echo 'Here is a single-quote: \'';
Вам нужно объединить ваши строки и переменные.
echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
Расширение переменной не работает внутри одинарных кавычек. Вы можете сделать следующее:
echo "<div id=\"panel1-under\">Welcome {$_SESSION['username']}</div>";
Или
echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
Вообще говоря, чтобы использовать одинарную кавычку внутри строки, которая использует одинарную кавычку в качестве разделителя, просто экранируйте одинарную кавычку внутри строки
echo 'That\'s all, folks';
Однако неясно, какова цель вашего кода.
echo '<div id="panel1-under">Welcome <?php echo "$_SESSION['username']"; ?></div>';
Поскольку вы уже используете PHP-код, <?php echo
не требуется. Если вы только пытаетесь вывести содержимое переменной сеанса, то вы можете использовать
echo '<div id="panel1-under">Welcome ' . $_SESSION['username'] . '</div>';
Используйте следующий код
$data = $session['user'];
echo "a big string and $data thats simple"