2013-02-19 28 views
0

我想用這個來回應一個圖像..擴大在字符串變量是在PHP

$actual_image_name = "image.png"; 
var msg = '<img src=http://website.com/uploads/$actual_image_name />'; 

但是我什麼都試過不工作。它要麼回到像「http://website.com/uploads/ $ actual_image_name」或其他路徑。

我知道這很簡單,但我需要一些幫助! 謝謝!


我的完整代碼;

function sendImg() 
{ 

$actual_image_name = "image.png"; 
var msg = "<img src=http://website.com/uploads/$actual_image_name />"; 




        document.getElementById("chatmsg").value = ""; 
        var url = "sendMsg.php?userId=" + userId + "&strangerId=" + strangerId + "&msg=" + msg; 
        xmlHttp6.open("POST", url, true); 
        xmlHttp6.onreadystatechange = stateChanged6; 
        xmlHttp6.send(null); 



} 

+0

此代碼在哪裏運行? 'var msg'不是有效的PHP語法,所以你應該只是得到一個語法錯誤。 – IMSoP 2013-02-19 19:48:40

+0

對不起,只是編輯它。 – 2013-02-19 19:53:27

+0

啊。這不是PHP,而是JavaScript。完全不同的語言,完全不同的語法。在JavaScript中沒有相當於PHP的雙引號,你必須使用''string'+ variable +'other_string''。 – IMSoP 2013-02-19 19:55:07

回答

5

必須用雙引號

$actual_image_name = "image.png"; 
$msg = "<img src=http://website.com/uploads/$actual_image_name />"; 

PHP Strings documentation

注:不像雙引號和定界符語法,變量和轉義特殊字符序列將當它們出現在單引號字符串中時不會擴展。


測試用例:

$actual_image_name = "image.png"; 
$msg = "<img src=http://website.com/uploads/$actual_image_name />"; 
echo $msg; 

輸出:

<img src=http://website.com/uploads/image.png /> 
+0

這還不行嗎? – 2013-02-19 19:28:42

+0

@RyanBoyling這是一個問題嗎?它是如何工作的,請提供詳細信息。 – Tchoupi 2013-02-19 19:35:54

+0

正如@AgustínDondo建議的那樣,「$ msg'變量缺少一個'$' – Tchoupi 2013-02-19 19:38:54

-1

請檢查您如何使用引號。

$actual_image_name = "image.png"; 
var $msg = '<img src="http://website.com/uploads/'.$actual_image_name.'" />'; 
echo $msg; 
+2

由於downvoter沒有評論:你最有可能是downvoted,因爲問題是關於字符串內的可變擴展,而不是串聯。 – 2015-01-13 16:23:40