我试图在php中为sql注入返回值,但返回是停止我的函数。这是一个例子:
function ex($input) {
if (strlen($input) > 5)
{
return $input;
}
return ":the end";
}
echo ex("helloa");
当我在函数内部使用return时它结束它而ex(“helloa”)==“helloa”而不是“helloa:end”就像我想要的那样。
答案 0 :(得分:3)
当你想拥有多个字符串时,实际上想要连接(或加入)它们。您可以继续将它们一起添加到变量中,然后在函数末尾返回该变量。
function ex($input) {
$return = "";
if (strlen($input) > 5)
{
$return .= $input;
}
$return .= ":the end";
return $return;
}
echo ex("helloa");
如果你真的想要返回多个值/字符串,你可以告诉函数返回一个数组。您只能通过函数返回一个输出。
function ex($input) {
// this array acts as a container/stack where you can push
// values you actually wanted to return
$return = array();
if (strlen($input) > 5)
{
$return[] = $input;
}
$return[] = ":the end";
return $return;
}
// you can use `implode` to join the strings in this array, now.
echo implode("", ex("helloa"));
答案 1 :(得分:0)
使用
function ex($input) {
return (strlen($input) > 5 ? $input : '') . ":the end";
}