2014-09-25 36 views
0
$var = require_once("target.php"); 

是否可以將require_once存儲在變量中並執行它遲到?PHP將require_once存儲在變量中並稍後執行

我需要放置到這個功能

function foo($path){ 
    if($path !== ""){$path = require_once($path);} 
    do something first... 
    $path//than execute require_once 
} 
+1

存儲什麼,源代碼或其輸出? – 2014-09-25 14:38:00

回答

0

答案是否定的。當你分配require_once();一個變量,該變量變成與1的布爾以防文件已成功包括,否則返回0(在require_once(),因爲它如果失敗返回致命錯誤無用 所以,這樣做:

<?php 
$hello = require_once("./hello.php"); 
echo $hello; // Prints 1. 
?> 

無論如何,如果你創建一個PHP文件,返回的東西,例如:

FILE: require.php 
<?php 
$hello = "HELLO"; 
return $hello; 
?> 

在這種情況下,前面的例子是不同的:

<?php 
$hello = require_once("./require.php"); 
echo $hello; // Prints HELLO. 
?> 

因此,您不能將函數本身存儲爲稍後執行,但可以存儲所需文件或包含文件中的返回值。無論如何,如果你更好地解釋你使用它的原因,我可能會更好地幫助你。

+0

如果你想存儲源代碼本身,你可以使用file_get_contents();代替。 – 2014-09-25 14:47:08

相關問題