else if ($D=0)
Используйте
сравнение (===), а не
присваивание (=).
$x == $b/(2*$a);
Используйте
присваивание (=), а не
сравнение (==).
abcx($a=2, $b=-4, $c=3);
При такой записи вы создаётё вне функции переменные $a, $b и $c, а потом передаёте в неё их значения. Переменные при это продолжают болтаться снаружи и никак не связаны с одноименными
локальными переменными функции. Это не ошибка, код будет работать, но действие бессмысленное и потенциально вредное. Вызывайте функцию как обычно:
abcx(2, -4, 3);
Судя по количеству ошибок на такой маленькой площади, вам нужно вернуться к учебникам - вы не понимаете, что и зачем происходит в коде, а без этого понимания программировать бесполезно.
P.S. Что же вы лесенку-то не достроили? :)
$D = sqrt($D);
$x == ($b + $D)/2*a;
$x2 === ($b - $D)/2*a;