2010-01-24 474 views
0

我想知道,有沒有什麼方法可以在不使用include函數的情況下將HTML頁面插入到PHP中?我不想使用外部html文件,我想直接將html編碼寫入php編碼中。如何使用PHP插入HTML頁面?

感謝您的幫助!

回答

2

交錯顯示它:

<?php 

// Some php code. 

?> 

<html> 
    <head> 
    <title>Hello!</title> 
    </head> 
    <body> 
    <h1>Header</h1> 
    <?php /* More php code. */ ?> 
    <p>Blah!</a> 
    </body> 
</html> 
<?php /* Even more php. */ ?> 

從一個最佳實踐點,不過,避免這樣做 - 有在同一個地方的業務邏輯(PHP)和演示(HTML),使維護困難。

編輯:爲了解決您的評論。你可以做同樣的方式,或使用echo

<?php if (x == 5) { ?> 
    <p>Blah!</a> 
<?php } else { 
    echo '<p>Bleh</p>'; 
} ?> 
+0

我需要它被包含在php編碼中。在if語句中。我需要它更像 <?PHP 如果(VAR =真){ YAY } – 2010-01-24 11:03:43

+0

使用最多的例子就可以輕鬆實現你正在進一步您的評論要求.... – DoctorLouie 2010-01-24 11:05:11

+1

@ Sean Booth:控制語句*的替代語法更容易閱讀:http://www.php.net/manual/en/control-structures.alternative-syntax.php – 2010-01-24 11:10:59

0

這是非常不好的習慣來混合HTML和PHP(用於不僅僅是輸出控制更多),但在這裏你去:

$html = "<div>This is HTML</div>" 
echo $html; 

Heredoc語法:

$html = <<<EOF 
<div> 
    <p> 
     Some longer HTML 
    </p> 
</div> 
EOF; 
echo $html; 

或使用alternative syntax for control statements如果輸出取決於一些條件(或者,如果通過陣列等環。)(其爲遠比構建HTM更好l對於字符串):

<?php if($foo): ?> 

    <div> Some HTML output </div> 

<?php else: ?> 

    <div> Some other HTML </div> 

<?php endif; ?> 

或只是

<?php //PHP here ?> 

<div>HTML</div> 

<?php //more PHP ?> 

<div>more HTML</div> 

<?php //even more PHP ?> 
0

如果您需要包括基於HTML條件的片段,可以這樣交錯的代碼。在這種情況下,它的方便使用alternative syntax for loop controls

<?php if ($var): ?> 
<html> 
<title>YAY</title> 
</html> 
<?php endif; ?> 

因此代碼更易懂,並且保留HTML語法着色(如果你的編輯器支持的話)。

相關問題