我想将值从我的循环传递到另一个PHP页面。但它只传递最新的价值。我试图使用数组,但它不起作用。
$roots = array();
do {
if (abs ($equation_x1-$equation_x0) < $delta) {
echo ' Solution cannot be found. ' . '<br>';
return 0;
}
$dx = ($x0*$equation_x1) - ($x1*$equation_x0);
$d = $equation_x1 - $equation_x0;
$x2 = number_format($dx / $d,6);
$equation_x2 = equation($x2);
$equation_x0 = $equation_x1;
$equation_x1 = $equation_x2;
$x0 = $x1;
$x1 = $x2;
echo '<table colspan = "2" align = "center">';
echo '<tr><td style="width:350px;height:50px" align = "center">' . $k . '</td>';
echo '<td style = "width:350px" align = "center">' . $x2 . '</td></tr>';
echo '</table>';
if ($k == $max_iter) {
break;
}
$k++;
$roots[]=$x2;
} while (abs($equation_x2) > $delta && $k < $max_iter);
for($i=0; $i<count($roots);$i++) {
$roots[$i] . '<br>';
}
$_SESSION['roots']= $roots;
我只回显$ x2的最后一个值,但我想将$ x2的所有值传递给另一个PHP页面以用于其他目的。有办法吗?
//我找到了数组的解决方案但现在我有问题在另一个php页面中打印出数组项。我一直在接受(注意:数组转换为字符串)
我修复了之前的代码
$x2 = $_SESSION['roots'];
foreach($x2 as $roots) {
echo $roots . '<br>';
}
这是我打印出数组项的代码。
public class CompileTimeAnnotationProcessor extends AbstractProcessor{
...
@Override
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
// Only one annotation, so just use annotations.iterator().next();
Set<? extends Element> elements = roundEnv.getElementsAnnotatedWith(annotations.iterator().next());
Set<VariableElement> fields = ElementFilter.fieldsIn(elements);
for (VariableElement field : fields) {
field.getConstantValue(); //get the value of static field?
}
return true;
}
...
}
//我修复了我的代码。它已经有效了。
答案 0 :(得分:-1)
$x2 = number_format($dx / $d,5);
没有任何语法可以将$ x2更改为数组。
尝试
$x2 = isset($_SESSION['x2']) ? $_SESSION['x2']:[] ;
...
$x2[] = number_format($dx / $d,5);
...
$_SESSION['x2'] = $x2;