我是编码和PHP的新手,我想知道如何在循环时使用return
。例如,我想返回/显示1-10但不使用echo。
$start = 1;
$end = 11;
for($start; $start < $end; $start=$start+1) {
echo $start; //how can I use return?
}
答案 0 :(得分:10)
好吧,return
将退出该函数,因此如果将return
置于循环中,则循环将只执行一次迭代(直到return
语句)。
您可以收集array中的所有值并返回数组:
function myFunction() {
$start = 1;
$end = 11;
$values = array();
for($start; $start < $end; $start=$start+1) {
$values[] = $start;
}
return $values;
}
也就是说,产生连续数字的函数已经存在:range()
。
答案 1 :(得分:2)
return
用于将函数调用的结果发送回调用它的函数或脚本。这与将参数传递给函数相反。
您正在做的是循环同一范围内的变量,因此不需要return
。通过echo
或print
进行打印。但是,您可以选择在该循环中构建一个值,并在循环完成后打印它。
此外,如果您处于循环中并且想要立即停止该循环,请使用break
;如果你想跳过你正在进行的迭代并转到下一个,请使用continue
。
关于continue
的更多说明。无论出于何种原因,我们都不想在$i
为6
时做任何事情:
$start = 1;
$end = 11;
for ($i = $start; $i < $end; $i++)
// changed this to iterate over $i for readability/clarity
{
if ($start == 6)
{
// essentially, continue just skips this iteration of
// the loop, goes back to the top, iterates $i based on
// that third parameter in the for() declaration, and
// continues on.
continue;
}
echo $start; //how can I use return?
}
// output: 1234578910
答案 2 :(得分:1)
只需使用
function foobar()
{
$output = '';
for ( $i = 1 ; $i <= 10 ; $i++ )
{
$output .= $i;
}
return $output
}
echo foobar();
答案 3 :(得分:1)
您可以通过使用return
在循环内外定义您想要.=
的变量来实现它。
这是一个有效的例子:
function my_function() {
// I am the variable to be return-ed
$k = "My World<br/>";
for ($z=1; $z<=3; $z++) {
$v = 'Here'.$z;
// I am the same variable but I am going inside the loop
$k .= $v . "<br/>";
}
//I am not always important to be here!
$k .= "Is Awesome";
// This is the show time..
return $k;
}
my_function();
<强>输出:强>
My World
Here1
Here2
Here3
Is Awesome
答案 4 :(得分:0)
返回将结束您当前所在的功能。您给我们的场景不是使用返回功能的好方法。
下面的示例将与您的代码相同,但使用函数和for循环。希望这回答你的问题。
$start = 11;
$end = 20;
for($start; $start <= $end; $start++){
echo calculateValue($start);
}
function calculateValue($value){
return $value - 10;
}
答案 5 :(得分:0)
function loop_kec($ar_kec) {
$total_data = count($ar_kec) - 1;
//$return_kec = array();
for ($e = 0; $e < $total_data; $e++) {
$return_kec .= 'kecamatan = ' . "'$ar_kec[$e]'" . ' or ';
}
$return_kec .= 'kecamatan = ' . "'$ar_kec[$total_data]'";
return $return_kec;
}