<?php
$x = 4;
$y = 5;
function greaterOrSmaller($x,$y){
if($x>$y){
return 1;
}elseif ($x==$y) {
return 0;
}else{
return -1;
}
}
if(greaterOrSmaller($x,$y)==1){
echo"{$x} is greater than {$y}";
}elseif(greaterOrSmaller($x,$y)==0){
echo"{$x} is equal to {$y}";
}else(greaterOrSmaller($x,$y)==-1){
echo"{$x} is smaller than {$y}";
}
Asked
Active
Viewed 2,626 times
0

CBroe
- 91,630
- 14
- 92
- 150

Babri Wala
- 3
- 1
- 2
-
4`else(...) { ... }` does not make sense. This needs to either be a plain `else { ... }`, if you have no more conditions to check at this point - or it needs to be another `elseif`. – CBroe Jan 31 '22 at 13:59
-
By the way, if you are using PHP >= 7, the "spaceship" operator is an in-built function which does the same as your `greaterOrSmaller()` function: `$comparison = $x <=> $y;` - https://www.php.net/manual/en/language.operators.comparison.php – Simon K Jan 31 '22 at 14:11
1 Answers
0
You forgot the in your last comparison the if in the elseif expression
Try this :
<?php
$x = 4;
$y = 5;
function greaterOrSmaller($x,$y){
if($x>$y){
return 1;
}elseif ($x==$y) {
return 0;
}else{
return -1;
}
}
if(greaterOrSmaller($x,$y)==1){
echo"{$x} is greater than {$y}";
}elseif(greaterOrSmaller($x,$y)==0){
echo"{$x} is equal to {$y}";
}elseif(greaterOrSmaller($x,$y)==-1){
echo"{$x} is smaller than {$y}";
}

Gwentey
- 34
- 1
- 7