【发布时间】:2017-05-05 10:21:19
【问题描述】:
所以我想在函数中获取回显值,并且我想在函数之外使用该值。 这是函数
function boyer_moore($pattern, $text)
{
$n = strlen($text);
$m = strlen($pattern);
$goodSuffixes = array();
$badCharacters = array();
goodSuffixes($pattern, $goodSuffixes);
badCharacters($pattern, $badCharacters);
$j = 0;
while ($j < $n - $m) {
for ($i = $m - 1; $i >= 0 && $pattern[$i] == $text[$i + $j]; $i--);
if ($i < 0) {
echo $j;
$j += $goodSuffixes[0];
} else {
$j += max($goodSuffixes[$i], $badCharacters[$text[$i + $j]] - $m + $i + 1);
}
}}
我想在函数外使用值 echo $j 并将其保存在变量中。 我还是初学者。 请帮助我,谢谢你。
我想累积所有 echo $j 值。 如果我在循环后使用 return $j ,则值会有所不同。之前谢谢你。
【问题讨论】:
-
但
$j的值可以在循环中多次更改。您应该详细说明是否需要获取最后一个$j值或累积所有$j值 -
将
$j值推入数组,从函数中返回数组 -
$j是一个计数。您要返回最终计数吗?在循环后添加 return $j -
@RomanPerekhrest 我想累积所有 $j 值
-
@Hery,你可以传入一个参数给函数(一个空数组)或者使用
global关键字在函数内部填充一个全局数组