2011-11-08 44 views

回答

64

單引號不會分析它們內部的PHP變量。使用雙引號或使用點來擴展回顯。

$variableName = 'Ralph'; 
echo 'Hello '.$variableName.'!'; 

OR

echo "Hello $variableName!"; 

而且你的情況:

​​

OR

$i = 1; 
echo "<p class='paragraph$i'></p>"; 
++i; 
+0

我想只有第一個適用於我的實例,因爲變量沒有從單詞中分離出來。 – Mechaflash

+1

不,不要緊,因爲第二個不在「段落」和變量的輸出之間輸出任何空格。 – Simon

+0

第三場勝利對我來說很有用。但我明白雙引號和單引號的區別。只是我正在編輯一個開源程序來進行一些小的自定義設置,我不想過多地改變格式。 – Mechaflash

2

使用雙引號:

$i = 1; 
echo " 
<p class=\"paragraph$i\"> 
</p> 
"; 
++i; 
10

變量插值不會發生在單引號中。您需要使用雙引號:

$i = 1 
echo "<p class=\"paragraph$i\"></p>"; 
++i; 
5
echo '<p class="paragraph'.$i.'"></p>' 

應該做的伎倆。

6
echo '<p class="paragrah"' . $i . '">' 
+0

+1使用Zend編碼標準間隔連接器之間的空間 – user

4
echo '<p class="paragraph'.$i.'"></p>'; 
0

你可以試試這個

$i = 1 
echo '<p class="paragraph'.$i.'"></p>'; 
++i; 
+0

@Mechaflash在這裏問了好問題 – 2013-05-04 08:53:40

14

始終使用雙引號使用字符串中的變量時和反斜槓其他任何雙引號,除了起點和終點的。你也可以使用下面的括號,這樣在字符串內部找到你的變量就更容易了,並且使它們看起來更乾淨。

$var = 'my variable'; 
echo "I love ${var}"; 

$var = 'my variable'; 
echo "I love {$var}"; 

以上將返回以下:我愛我的變量

-2

有時 「我varaiable:$ {}值」;

3

這是做這件事的三種最佳方式。

方法一:

$x = '+3'; 
echo "1+2$x"; 

雙引號(「)可以讓您只需直接通過它裏面的變量

方法二:

$x = '+3'; 
echo '1+2'.$x; 

當您不希望使用雙引號出於任何原因與此一起。 (。)基本上意味着「添加」。所以,如果你想添加類似,1 + 2 + 3 + 4 + 5和你的變量在中間,所有你需要做的是:

$x = '+3'; 
echo '1+2'.$x.'+4+5'; 

方法3:(添加直接在所謂的可變內部變量)

$x = '+3'; 
$y = '+4'; 
$z = '+5'; 
echo "1+2${"x".$y.$z}"; 
Output: 1+2+3+4+5 

在這裏,我們使用的是添加"."$y$z$x; {} 在渲染未定義的 變量之前優先考慮其內部的工作。

這是個人調用函數是一個非常有用的功能:

//Add the Get request to a variable. 
$x = $_GET['tool']; 

//Edit: If you want this if to contain multiple $xresult's change the if's 
//Conditon in the "()" to isset($get). Simple. Now just add $xresultprogram 
//or whatever. 
if($x == 'app') { 
    $xresultapp = 'User requested tool: App'; 
} 

//Somewhere down far in HTML maybe... 

echo ${"xresult".$x}; 
//Note: doing ${"xresult".$_GET['tool']} directly wont work. 
//I believe this is because since some direct non-echo html was loaded 
//before we got to this php section it cant load cause it has already 
//Started loading client side HTML and JS. 

這將輸出$ xresultapp的,用戶要求的工具:應用程序,如果他們做到了example.com?tool=app。您可以使用else語句修改以定義在請求其他請求的應用程序e.t.c時發生的情況。記住一切都區分大小寫,所以如果他們請求應用程序在大寫它不會輸出$ xresultapp。