2016-05-20 56 views
-5

我試圖得到一個包含PHP文件的內容,例如:保存PHP文件到變量

PHP

$body = include 'body.php'; 

但是,這是行不通的。

+0

什麼是body.php?你有什麼東西回來嗎? – Andreas

+0

你想做什麼?你的意思是在頁面上輸出PHP代碼嗎? –

回答

1

您可以輸出緩衝區以確保HTML未顯示,而是放入變量中。 (PHP將仍然運行,但HTML輸出將包含在變量中) 您可以使用函數ob_get_contents將輸出緩衝區的內容保存在變量中。

PHP

ob_start(); 
include "body.php"; 
$body = ob_get_contents(); 
ob_end_clean(); 
+0

Thx先生,這是工作,這正是我需要的! – Orelsiinge

-2

你需要有一個return語句在你的包含文件(body.php)。

+0

爲什麼這會降低投票率?這是真的。如果你的$ body =(包含「body.php」);'並且返回正文,它就會起作用。函數內部應該使用 – Andreas

+0

返回語句。雖然它可以在函數範圍之外使用,但僅僅因爲ob_get_contents,ob_end_clean而沒有意義。這就是爲什麼它被低估。 – Spooky

+0

'''return'''語句不僅用於內部函數。如果是這樣,它將不能在函數外部使用。你可以在文件中放置一個return語句,這樣你就可以像一個函數那樣處理這個文件。這個說法在很多地方都有使用。你甚至可以在Laravel框架代碼中找到它。 (對於語言功能,請查看)。 –

1
ob_start(); 
include 'desired_file.php'; 
$file = ob_get_clean();