当我调用函数mainfunc()
时,我想将一个显式值放在函数输出附近,作为mainfunc()
的参数。我想像mainfunc('foo'.LaTeX());
那样做。
但是,当我这样做时,我会在“foo”之前获得LaTeX()
的输出,它会完全打印我LaTeXfoo
(LaTeX()
的输出为LaTeX
)当我尝试像LaTeX() . foo
那样置换它时,我得到了同样的东西。
所以,这是函数LaTeX()
:
function LaTeX()
{
?><span class="latex">L<spu>a</sup>T<sub>e</sub>X</span><?php
}
那么,我该怎样做才能让mainfunc
使用fooLaTeX
函数准确接收LaTeX()
?
答案 0 :(得分:2)
答案很简单:
不打印(如果您关闭PHP代码并重新打开会发生这种情况)。
以下两行代码基本上会做同样的事情(它们等同于):
echo '<b>Hello World!</b>';
?><b>Hello World!</b><?php
相反,使用返回值:
function LaTeX()
{
return '<span class="latex">L<sup>a</sup>T<sub>e</sub>X</span>';
}
这将创建您正在寻找的行为。但是,如果您只是计划返回固定字符串,那么最好定义一个常量:
define(LaTeX, '<span class="latex">L<sup>a</sup>T<sub>e</sub>X</span>');
mainfunc('foo' . LaTeX);