PHP错误的地方来自echo

时间:2018-02-05 21:24:13

标签: php

可以删除" 323 2 32 3 23wwerwrwre

1 个答案:

答案 0 :(得分:2)

由于send()执行自己的回显,因此不应在echo语句中调用它。你应该这样做:

echo "Groups: ";
send();

请记住,在调用函数/运算符之前,必须先评估函数或运算符的参数。如果评估参数有副作用,例如打印输出,则会在调用函数/运算符之前发生。所以你的代码大致相当于:

$temp = send();
echo "Groups: " . $temp;

以这种方式写,显然为什么在Groups:之前打印列表。

如果你想按照自己的方式调用函数,它需要返回字符串,而不是自己回显它。

public function send() {
    global $t;
    $result = "";
    foreach ($t->serverGroupList() AS $r) {
        $result .= $r;
    }
    return $result;
}

或更简单:

public function send() {
    global $t;
    return implode("", $t->serverGroupList());
}