How do I use single quotes inside single quotes?

二次信任 提交于 2019-12-30 03:09:13

问题


Can anyone explain how to make this code work?

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

I've tried removing the single quotes (echo '<div id="panel1-under">Welcome <?php echo "$_SESSION[username]"; ?></div>';), but it doesn't work.


回答1:


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

or

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

Quick Explain :

  • You don't have to reopen the tags inside a echo String (" ... ")
  • What I have done here is to pass the string "Welcome " concatenated to $_SESSION['username'] and "" (what the . operator does)
  • PHP is even smart enough to detect variables inside a PHP string and evaluate them :

    $variablename = "Andrew";

    echo "Hello $variablename, welcome ";

=> Hello Andrew, welcome

More infos : PHP.net - echo




回答2:


Inside single quotes, variable names aren't parsed like they are inside double-quotes. If you want to use single-quoted strings here, you'll need to use the string concatenation operator, .:

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

By the way: the answer to the question in the title is that in order to use a literal single-quote inside a single-quoted string, you escape the single-quote using a backslash:

echo 'Here is a single-quote: \'';



回答3:


You need to concatenate your strings & variables.

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



回答4:


Variable expansion doesn't work inside of single quotes. You can do either:

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

or

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



回答5:


Generally speaking, to use the single quote inside a string that is using the single quote as delimiter, just escape the single quote inside the string

echo 'That\'s all, folks';

It's not clear what the purpose of your code is, though.

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

As you are already using PHP code, <?php echo is not necessary. If you are only trying to output the content of a session variable, then you can use

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



回答6:


Use the following code

$data = $session['user'];
echo "a big string and $data   thats simple"


来源:https://stackoverflow.com/questions/3383838/how-do-i-use-single-quotes-inside-single-quotes

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!