return array($x1,$x2);
list ($zero, $one) = equation ();
echo $zero;
<?php
$a= 1;
$b= -2;
$c= -3;
function prints ($word){
echo $word;
}
function equation ($a,$b,$c){
$D=pow($b,2)-4*$a*$c;//D=b^2-4ac
if ($D > 0) {// если D>0
$x1=(-$b+sqrt($D))/(2*$a);// Первый X
$x2=(-$b-sqrt($D))/(2*$a);// Второй X
}elseif ($D = 0) {
$x1=(-$b+sqrt($D))/(2*$a);// Первый X
}elseif ($D < 0){
$x1='Нет решения';
}
return $x1 $x2;
}
$math = equation ($a,$b,$c);
prints($math);
function prints ($word){
echo $word;
}
return array($x1,$x2);
в equation()
возвращает массив, а в prints()
ты пытаешься вывести массив через echo как строку без преобразования. Не надо так делать. Убрал твой говнокод prints()
и случилась магия! return array($x1,$x2);
Работает!<?php
$a= 1;
$b= -2;
$c= -3;
function equation ($a,$b,$c){
$D=pow($b,2)-4*$a*$c;//D=b^2-4ac
if ($D > 0) {// если D>0
$x1=(-$b+sqrt($D))/(2*$a);// Первый X
$x2=(-$b-sqrt($D))/(2*$a);// Второй X
}elseif ($D = 0) {
$x1=(-$b+sqrt($D))/(2*$a);// Первый X
}elseif ($D < 0){
$x1='Нет решения';
}
return [$x1, $x2];
}
$math = equation ($a,$b,$c);
print_r($math);