2015-11-04 56 views
2

這很奇怪......我想包括一個變量中的文件後打印出來,但它已經包括文件無需打印變量...包括變量中 - 包括但打印可變

$var = include('file.php'); 
// stuff 
echo $var; 

file.php:

echo $stuff; 

輸出:

Notice: Undefined variable: stuff in file.php 

我評論了echo $var到確保但它包括反正...

有沒有什麼辦法只是加載變量內的內容,而不是包括文件?

+1

你通過加載,你期待看到「回聲$的東西」的內容的意思;作爲$ var?如果是這樣,你想'file_get_contents('file.php')' 但是,如果你想它實際取代的價值,那麼你想file.php有'返回$ stuff' –

+0

如果文件內容之前加載'stuff'會在打印完後打印變量? –

+0

我不明白你的評論。 如果你在file.php中有'echo $ stuff;',那麼它有一個函數可以回顯值而不是返回它。如果您希望$ var獲得與$ stuff相同的值,則需要'返回$ stuff'。如果你想整個文件,代碼和所有,作爲一個字符串,然後採取Scais的解決方案。 –

回答

2

嘗試的file_get_contents

<?php 
    $var = file_get_contents('file.php'); 
echo $var; 
?> 
+0

所以答案是:'include()'將始終包含文件,即使它在變量中被調用。謝謝,我會在5分鐘內接受答案。 –

+0

include()用於加載部分php代碼。在$ var中,您設置的操作結果不是文件 – scaisEdge

+0

但通過執行'$ var = include('file.php');'include it? (不打印'$ var') –

0

你可以做你喜歡做

$var = include 'file.php'; 

所包含的文件需要返回一個值,但。 最後在file.php:

// Do some stuff (but don't echo anything) 
return 'This will be put in the var-variable to be echoed or used when you see fit';