2012-08-09 50 views
0

請看下面的代碼如果變量被雙引號括起來,爲什麼會有錯誤信息?

<?php 
//The array is storing a blog entry in it 
$entry = array ('title' => 'sample title', 
     'date' => 'August 9, 2011', 
     'author' => 'daNullSet', 
     'body' => 'I shall become a web developer IA',); 
echo "The title of the blog is ".$entry['title']."<br />"; 
?> 

上面的代碼執行得很好,但是當我用雙引號括$入門[「標題」],而在echo語句和其它字符串連接返回以下分析錯誤。

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\xampp\htdocs\php-ex\test.php on line 7

你能指導一下錯誤的原因嗎?我對編程絕對陌生。謝謝

+0

請刪除'「」'後**‘我要成爲一名Web開發IA’** – Jalpesh 2012-08-09 09:17:06

+0

回聲「博客的標題是「」。$入門[‘標題’]。'「
'; – 2012-08-09 09:17:39

+1

@Jalpesh額外的逗號是可選的,我將_always_包含在PHP中。所以這是一個品味問題。 OP:不要只包括那些運行良好的coede,包括實際拋出錯誤的代碼 – Evert 2012-08-09 09:21:42

回答

2

爲了在字符串中使用值從一個關聯數組,你需要使用"complex (curly) syntax"。這意味着什麼,實際上,是你需要用它{},就像這樣:

echo "The title of the blog is {$entry['title']}<br />"; 

如果嘗試直接在雙引號字符串用「複雜」變量不使用大括號,你會得到你報告的解析錯誤。

這將是非常值得您深入閱讀this entire page所以你知道什麼是和不允許的。

+0

我想他想把標題包在「引號」中 – 2012-08-09 10:06:59

+0

@Dagon我知道這有點不清楚 - 但這個答案是基於他報告的語法錯誤,並且據我所知,這是引發該特定錯誤消息的唯一方法。 – DaveRandom 2012-08-09 10:09:02

0
<?php 
//The array is storing a blog entry in it 
$entry = array ('title' => 'sample title', 
     'date' => 'August 9, 2011', 
     'author' => 'daNullSet', 
     'body' => 'I shall become a web developer IA'); 
echo "The title of the blog is '".$entry['title']."'<br />"; 
?> 

請試試這個

我希望它能幫助你

0

正如我所知道的那樣,爲什麼會導致錯誤是因爲編譯器總是檢查像{},(),「」,「'這樣的開始和結束語法。當你開始一個語法時,你應該給它一個結束標記。如果我正確理解你的問題,你的問題是你想添加「進入」。「你可以使用\」來逃避編譯器將其作爲語法讀取。

echo "The title of the blog is \"".$entry['title']."\"<br/>"; 
相關問題