如何从函数getLast()中获取返回的$ i并在foreach中递增它?
protected function getLast($array = [])
{
foreach($array as $file)
{
$getLast[] = substr($file, -5, 1);
}
$i = (int)$getLast[0];
return $i;
}
protected function foo()
{
$this->getLast($gl);
foreach($array as $img)
{
# ...
$i++;
}
}
答案 0 :(得分:0)
您可以使用reference获取变量$ i的值
代码:
protected function getLast($array = [], &$i)
{
foreach($array as $file)
{
$getLast[] = substr($file, -5, 1);
}
$i = (int)$getLast[0];
}
protected function foo()
{
$i = 0;
$this->getLast($gl, $i);
foreach($array as $img)
{
# ...
$i++;
}
}
在你的情况$i = $this->getLast($gl);
答案 1 :(得分:0)
您应该将函数的结果分配给新变量。
protected function foo()
{
$i = $this->getLast($gl);
foreach($array as $img)
{
# ...
$i++;
}
}
但这不是同一个$i
,它将是另一个变量。我想你需要一个值,而不是对变量的引用。
答案 2 :(得分:0)
你的函数返回一个值 - 这是你的i。因此,您只需要在函数出现时确定其返回值。
$i = $this->getLast($gl);