【发布时间】:2017-03-21 10:01:18
【问题描述】:
我有一个根据条件返回两个值的函数,在调用函数数组的页面中,下面有一个 html 输出到屏幕上:
function submitMessage($user) {
if (!$user) {
$a = "Message A";
$b = "Message B";
return array($a, $b);
}
else {
$a = "Message C";
$b = "Message D";
return array($a, $b);
}
在页面上:
$message = submitMessage($username);
<div class="r-box box-shadow">
<h4 class="text-center weight-700"><?php echo $message[0];?></h4>
<p><?php echo $message[1];?></p>
</div>
//more html below etc
我想要的是在从IF statement 的第一部分返回的内容之后停止 html 输出。
比如:
function submitMessage($user) {
if (!$user) {
$a = "Message A";
$b = "Message B";
return array($a, $b);
exit();
//would like the output to stop if this is met.
}
else {
$a = "Message C";
$b = "Message D";
return array($a, $b);
}
我尝试像上面那样添加出口,但 HTML 仍然被发送到屏幕。如果满足第一部分,是否可以停止 HTML 的输出?
【问题讨论】:
-
你试过了吗?发生了什么?这与您的预期有何不同?
-
@Steve 更新了问题。
-
return之后的任何内容都将被忽略。如果你要去exit,那么创建数组也没有意义,所以整个函数可以简单地读取if (!$user) exit; $a='..',$b='..';return [$a,$b]; -
显然 HTML(不是来自 withn 函数)不会被忽略。
-
return只是将处理返回给调用代码,在这种情况下是嵌入在 html 中的代码。另一方面,exit停止所有进一步的代码执行。它不是很清楚你想做什么,可能你需要给出更高层次的概述。