2011-12-20 25 views
0

此代碼定界符:錯誤在PHP

<? 
echo <<<EOM 
Hello 
EOM; 
?> 

導致此錯誤:

Parse error: parse error in C:\xampp\htdocs\tiketku\cari.php on line 2

我在做什麼錯?

+1

你確定這是正確的文件嗎? – BoltClock 2011-12-20 09:43:11

+0

是的,我確定..我從書中得到這個代碼,它應該得到輸出..「你好」..但我得到一個錯誤..你知道如何解決這個問題嗎? – 2011-12-20 09:45:38

+1

當你還處於早期學習過程中時,一句忠告:習慣於始終使用完整的開始標記<?php,而不僅僅是 Oldskool 2011-12-20 09:48:41

回答

11

您在<<<EOM之後有空位。這是非法的。刪除空間,它會正常工作。

the manual

A third way to delimit strings is the heredoc syntax: <<< . After this operator, an identifier is provided, then a newline.

你不能有標識和新行之間的空白。

+0

啊jeez。 +1。我*編輯*的問題,並錯過了。 – 2011-12-20 09:46:12

+0

真的嗎?我寧願相信這是一個錯字 – ajreal 2011-12-20 09:46:32

4

您在EOM後有一個空格␣。

<? 
echo <<<EOM␣ 
Hello 
EOM; 
?> 

您需要將其刪除。

+0

我只是刪除空間這樣'<?PHP 呼應<<< EOMHello EOM;?>' 但仍然得到錯誤... 請幫助 – 2011-12-20 10:02:22

+0

你需要保持當然是換行符。只有一個空間可以刪除。 - 同時闡明你的新錯誤信息。 – mario 2011-12-20 10:05:39

+0

OK ..我解決這個問題..感謝名單馬里奧和在座的各位高手.. – 2011-12-20 10:13:14

2

在第一個「EOM」之後,您有一個額外的空格字符!

+0

我只是刪除這樣的空間「<?PHP 呼應<<< EOMHello EOM;?>」 – 2011-12-20 10:00:14