<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="zh-CN" />
<title>Hello World</title>
<style>
body{font-size:15px;color:#000;font-family:Arial,Helvetica,sans-serif;}
a{color:#039;text-decoration:none;}
</style>
</head>
<body>
</b>
<?php
echo "Hello world!這是正文";
?>
<br>
<a href=# >這是一個超鏈接</a>
</b>
</body>
</html>
<?php
if(!$_POST)
{
echo '<form action="" method="post">
服務器地址:<input type="text" name="host" value="localhost" /><br />
數據庫賬號:<input type="text" name="user" value="" /><br />
數據庫密碼:<input type="password" name="pwd" value="" /><br />
指定數據庫:<input type="text" name="db" value="test" /><br />
<input type="submit" value="確定"/>
</form><hr/>說明:<b>……<br /></b>
';
}
?>
不過比較多見的還是加了轉義符號的,個人覺得閱讀起來不爽 echo "<input type=\"submit\" value=\"確定\"/>"
<<<EOT EOT;
中間的文檔直接輸出,一個比較好理解的說法是“一個多行的echo ”。
<?php
$label1 = "deepblue_mainslide";
$label2 = "deepblue_mainh1";
$label3 = "deepblue_maint1";
$label4 = "deepblue_maint2";
$rs = array("http://123.abc.com", "abc", "ABC");
print <<<EOT
<div class="slidecont">{$label1}</div>
<div class="newcontainter">
<div class="head">{$label2}</div>
<div class="cont" id="Tab1">
{$label3}
</div>
<div class="cont" id="Tab2">
{$label4}
</div>
</div>
<a href="$rs[0]" title="$rs[1]" target="_blank">$rs[2]</a>
EOT;
?>
<?php
print <<<EOT[1]
<a href="http://blog.i1728.com/" title="東方天宇的博客">東方天宇的博客</a>
[2]EOT;[3]
echo "喂~人家在等你呢!";
?>
我們會發現,[如果三個地方任何一個地方加了空格],會顯示以下三種不同的錯誤提示,最後的echo也沒有執行。
//[1]( ! ) Parse error: syntax error, unexpected '<<' (T_SL) in D:\MyHTTP\Apache24\htdocs\testPHPmixHTML04.php on line 2
//[2]( ! ) Parse error: syntax error, unexpected end of file, expecting variable (T_VARIABLE) or heredoc end (T_END_HEREDOC) or ${ (T_DOLLAR_OPEN_CURLY_BRACES) or {$ (T_CURLY_OPEN) in D:\……\testPHPmixHTML04.php on line 14
//[3]( ! ) Parse error: syntax error, unexpected '{' in D:\MyHTTP\Apache24\htdocs\testPHPmixHTML04.php on line 8
這是因為(<<<EOT)沒有找到標識符結束字符,將echo語句也包含到需要輸入的內容了。
同時,因為沒有找到標識符結束字符所有的內容都不會輸出。