2010-08-01 105 views
7

任何人都可以解釋如何使這個代碼的工作?如何在單引號內使用單引號?

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

我試圖消除單引號(echo '<div id="panel1-under">Welcome <?php echo "$_SESSION[username]"; ?></div>';),但它不工作。

回答

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

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

快速解釋:

  • 您不必重新打開裏面的標籤一個 回聲字符串(「...」)
  • 我在這裏所做的是傳遞字符串‘歡迎’串接$ _SESSION [‘用戶名’]‘’(什麼。運營商一樣)
  • PHP甚至足夠聰明來檢測一個PHP字符串變量裏面,評價他們:

    $ VARIABLENAME =「安德魯」;

    echo「Hello $ variablename,welcome」;

=>您好安德魯,歡迎

更多的相關信息:PHP.net - echo

+1

如果字符串是雙引號或Heredoc,PHP將替換PHP字符串中的變量。這是一個重要的區別。 – JAL 2010-08-01 21:49:05

+0

+1在這個例子中是如此,但我沒有明確提及它! thx – Kami 2010-08-01 23:12:33

+1

'echo「

Welcome {$_SESSION['username']}
」;'還應該工作嗎? – Svish 2010-08-01 23:32:46

6

您需要連接字符串&變量。

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

變量擴展在單引號內不起作用。您可以執行:

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

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

酷! +1。我不知道你可以像第一個例子那樣使用關聯數組,我很懷疑它是否可以工作,並且我自己測試了它,它實際上可行,儘管我可能永遠不會這樣使用它... – zz1433 2010-08-01 21:45:40

+1

第一個例如會出現一個警告,如「undefined constant'username',假設'username'」。最好使用括號語法:'echo「

Welcome {$_SESSION['username']}
」; – JAL 2010-08-01 21:47:21

+0

@Alex JL,哎呀,固定! – jasonbar 2010-08-01 21:48:11

5

裏面單引號,變量名不被解析就像它們是雙引號內。如果你想在這裏使用單引號字符串,則需要使用字符串連接操作,.

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

順便說一句:回答標題中的問題是,爲了

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

一般來說,使用正在使用單引號作爲字符串中的單引號:使用文字單引號單引號字符串中,您使用反斜槓逃逸單引號分隔符,只是逃避了簡單的單引號g

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>'; 
0

使用下面的代碼

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

它是如何回答「如何在單引號內使用單引號?」的問題? – 2014-01-07 16:13:03