如何在php中将require语句的输出转换为字符串
我和一个大团队一起工作,我在制作返回html代码的函数,我在回显这些函数的结果以获得最终页面。问题是,我需要团队其他成员开发的一些代码片段,我需要它是一个字符串,但是代码可以作为php文件使用,我应该在我的页面中包含或需要它 因为我不是在写一封信;ml页面,但作为生成该代码的函数,我需要将require语句的结果html转换为字符串,将其连接到函数生成的代码 有没有办法计算require并将其结果连接到my String 我尝试了函数eval(),但不起作用,并且读了一些关于获取内容()的内容,但它也不起作用。我不知道我是否需要导入一些东西,我想这与wordpress有关,我使用的是原始php如何在php中将require语句的输出转换为字符串,php,require,Php,Require,我和一个大团队一起工作,我在制作返回html代码的函数,我在回显这些函数的结果以获得最终页面。问题是,我需要团队其他成员开发的一些代码片段,我需要它是一个字符串,但是代码可以作为php文件使用,我应该在我的页面中包含或需要它 因为我不是在写一封信;ml页面,但作为生成该代码的函数,我需要将require语句的结果html转换为字符串,将其连接到函数生成的代码 有没有办法计算require并将其结果连接到my String 我尝试了函数eval(),但不起作用,并且读了一些关于获取内容()的内容,
谢谢你的帮助!!!=) 您可以使用include或require接收字符串,但必须在include之前更新这些文件才能添加return语句 要包含的文件应返回如下结果
<?php
$var = 'PHP';
return $var;
?>
试试ob_…()函数系列。例如:
<?php
function f(){
echo 'foo';
}
//start buffering output. now output will be sent to an internal buffer instead of to the browser.
ob_start();
//call a function that echos some stuff
f();
//save the current buffer contents to a variable
$foo = ob_get_clean();
echo 'bar';
echo $foo;
//result: barfoo
?>
或者,如果要将函数调用的回显结果放入变量中,可以执行以下操作:
//untested
function get_include($file){
ob_start();
include($file);
return ob_get_clean();
}
//untested
//signature: get_from_function(callback $function, [mixed $param1, [mixed $param2, ... ]])
function get_from_function($function){
$args = func_get_args();
shift($args);
ob_start();
call_user_func_array($function,$args);
return ob_get_clean();
}
取决于其他文件的工作方式
$content = require 'otherfile';
echo
或其他方式直接打印,请使用:
ob_start();
require 'otherfile';
$content = ob_get_clean();
很难回答,因为没有提供代码,但是include文件是否包含变量?还是一个$return“type”变量?您应该显示一些代码。至少我真的不明白,你在做什么,你想要什么。
不是一个解决方案吗?包含的文件是一个完整的php脚本,其中混合了html和php语句,但应该生成一个表单。我没有发布代码,因为它有点大,而且,我认为,它是不相关的。我需要做的是像$html.=transformation_函数(require(“path/to/my/included/file”)代码>,我要的是转换函数…我不知道ob_get_clean()。。。很好(我正在调用ob\u get\u contents,然后调用ob\u end\u clean()。希望你不介意,但我把它添加到了我的答案中。投票吧!
ob_start();
require 'otherfile';
$content = ob_get_clean();