我需要使用return显示函数中另一个页面的内容。 这样做的最佳方式是什么?
说我有file.php
。在我的另一个页面的脚本中,我想调用一个函数并返回file.php。
例如:
myFunction() {
$page = WHAT('file.php');
return $page;
}
用什么代替'什么'?我试过包括,因为这是我所知道的,但它在这里不起作用。
EXTRA NOTES:这用于Drupal模块。如果我使用$page = 'insert code here'; return $page;
,则管理主题/菜单会正常显示 - 但如果我使用$page = include('file.php');
则不会显示,因为该功能在看到'include'
时甚至不使用返回。
答案 0 :(得分:1)
有关文件使用的代码或内容:file_get_contents
对于另一个php页面的即时结果,您可以尝试ob_start和ob_get_clean
。
它会将包含文件的输出收集到内存中,稍后您可以将输出收集到变量并清理内存或直接显示输出。
像:
myFunction(){
ob_start();
include('file.php');
$page = ob_get_clean();
return $page;
}
答案 1 :(得分:0)
使用$page = file( 'file.php' );
这将返回一个包含每行代码的数组。
function myFunction() {
$page = file('file.php');
return $page;
}
然后你可以这样做:
$myPage = myFunction();
foreach( $myPage as $line => $code){
echo $code;
}
答案 2 :(得分:0)
您可以使用Curl检索其他页面内容
<?php
myFunction()
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "file.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
return $output
}
&GT;
答案 3 :(得分:0)
试试这个
function foo(){
ob_start();
include('file.php');
$page = ob_get_clean();
return $page;
}
答案 4 :(得分:-1)
你的意思是你想要在没有解析它的情况下返回file.php的源代码吗? 如果是的话,fopen和fread就是你的朋友。
function yourFunction() {
$filehandle = fopen('file.php', "r");
$filecontent = fread($filehandle, filesize($filename));
fclose($file_handle);
return $filecontent;
}