爲什麼下面的代碼顯示來自msg.php的php代碼?在網站上查看PHP代碼?
$flag = file('msg.php');
$content = "";
foreach ($flag as $value) {
$content .= $value;
}
echo $content;
有沒有辦法阻止它顯示PHP代碼?
爲什麼下面的代碼顯示來自msg.php的php代碼?在網站上查看PHP代碼?
$flag = file('msg.php');
$content = "";
foreach ($flag as $value) {
$content .= $value;
}
echo $content;
有沒有辦法阻止它顯示PHP代碼?
您將其輸出爲文本echo
並用file
讀取它們,兩者都不會執行任何PHP。您的示例可以替換爲:
require 'msg.php';
並且一切都將正常工作。
刪除最後的echo
。 echo
在屏幕上打印內容。
您可能沒有<?php ?>
標籤包裝您的代碼。如果你這樣做,那麼PHP沒有安裝在你的服務器上。
這裏有一些事情要檢查:
<?php ?>
標籤的代碼?如果這兩種情況都是這樣,您的服務器可能沒有設置爲正確處理PHP。
msg.php的內容又是什麼?如果它包含php代碼,那麼可能是獲取輸出的內容,因爲您只是閱讀它,然後在沒有運行解釋器的情況下將其回顯。
您應該爲msg.php中的$flag
指定值幷包含該文件。
include 'msg.php'
如果你表示文件msg.php的內容有PHP代碼,這,這是什麼顯示,那是因爲你做的僅僅是。把PHP作爲文本。
PHP代碼被視爲文本,因爲它尚未被服務器處理。您將不得不通過查找PHP標籤的打開和關閉來過濾掉PHP,但是我懷疑您希望代碼在需要包含該文件的情況下執行。
你想完成什麼? – Cfreak 2012-03-12 21:29:00