在TD标记内调用PHP函数

在TD标记内调用PHP函数,php,function,html-table,Php,Function,Html Table,我有个小问题 "<td height=50>" . captcha() . "</td>"; “”。验证码()。""; ^上面的代码是一段很长的代码,这只是其中的一小部分,看起来一切正常。但是,唯一的问题是captcha(函数调用的图像)不在TD标签中,它完全在表之外 无论如何,如果能解决这个问题,我们将不胜感激。问题在于函数不返回值,而是回显它: function b() { echo "b"; } echo "a" . b() . "c"; 在这个代码示例

我有个小问题

"<td height=50>" . captcha() . "</td>";
“”。验证码()。"";
^上面的代码是一段很长的代码,这只是其中的一小部分,看起来一切正常。但是,唯一的问题是captcha(函数调用的图像)不在TD标签中,它完全在表之外


无论如何,如果能解决这个问题,我们将不胜感激。

问题在于函数不返回值,而是回显它:

function b() {
  echo "b";
}

echo "a" . b() . "c";
在这个代码示例中,您将看到它输出
bac
。原因是,
b
已被回显,而字符串“a”已被回显<代码>无效'c'(导致
ac
)正在合并

毫无疑问,您的验证码函数也存在同样的问题


解决方案:在函数中使用
return
而不是
echo

问题在于函数不返回值,而是回显它:

function b() {
  echo "b";
}

echo "a" . b() . "c";
在这个代码示例中,您将看到它输出
bac
。原因是,
b
已被回显,而字符串“a”已被回显<代码>无效'c'(导致
ac
)正在合并

毫无疑问,您的验证码函数也存在同样的问题


解决方案:在函数中使用
return
而不是
echo

是否尝试将
captcha
函数连接到
td
中?如果您说这是更多代码的一部分,您可以尝试以下内容:

<table>
  <tr>
    <td>...</td>
  </tr><tr>
    <td><?php echo captcha(); ?></td>
  </tr>
</table>

...

您是否试图在
td
中连接
captcha
函数?如果您说这是更多代码的一部分,您可以尝试以下内容:

<table>
  <tr>
    <td>...</td>
  </tr><tr>
    <td><?php echo captcha(); ?></td>
  </tr>
</table>

...

那么你为什么不在桌子外面简单地回显一下呢?给我们您可能还应该检查生成的HTML的代码。captcha()返回什么?你需要提供更多的信息。没人知道你用的是什么。如果它返回图像的url,请确保将其包装在IMG标记中。“>需要更多信息…可能
captcha()
函数返回另一个HTML中不允许的
结构。为什么不直接在表外回显它呢?给我们竞争代码您可能还应该检查生成的HTML。什么是captcha()返回?您需要提供更多信息。没有人知道您使用的是什么。如果它返回图像的url,请确保将其包装在IMG标记中。“>需要更多信息…可能
captcha()
函数返回另一个HTML中不允许的
结构。