У меня есть следующий код, который сравнивает!
function arr($part){
$partt=intval($part);
if($partt==1){
$url="x4";
}if($partt==2){
$url="x3";
}if($partt==3){
$url="x2";
}if($partt==4){
$url="x1";
}else{
// This always executes
echo $partt;
exit;
}
Я пробовал следующее
arr(1)
arr('1')
arr("1")
arr((1))
все выполняет это
echo $partt;
exit;
Это эхо 1
но если $ part 1
тогда почему $url="x4";
не выполняется и почему else
выполняет
Попробуй с else if
лайк
if($partt==1){
$url="x4";
}else if($partt==2){
$url="x3";
}else if($partt ==3){
$url="x2";
}else if($partt==4){
$url="x1";
}else{
echo $partt;
exit;
}
echo $url;
exit;
Остальное всегда будет выполняться, когда $partt
не равно 4
потому что вам нужно использовать else if
, Ваш код должен выглядеть так:
function arr($part){
$partt=intval($part);
if($partt==1)
{
$url="x4";
}
else if($partt==2)
{
$url="x3";
}
else if($partt==3)
{
$url="x2";
}
else if($partt==4)
{
$url="x1";
}
else
{
echo $partt;
}
}
Еще лучшим решением для этого было бы использование оператора switch:
function arr($part) {
$partt=intval($part);
switch ($partt)
{
case 1:
$url="x4";
break;
case 2:
$url="x3";
break;
case 3:
$url="x2";
break;
case 4:
$url="x1";
break;
default:
echo $partt;
break;
}
}
Смотря на ваш код:
if($partt==4){
$url="x1";}else{
// This always executes
echo $partt;
exit;
}
PHP войдет в блок «else», если $ partt! = 4. Вы должны попробовать заменить все «if», кроме первого, на «elseif».
Документация PHP: http://php.net/manual/fr/control-structures.elseif.php
Если вам нужно использовать более одного elseif
попробуйте использовать switch
вместо.
function arr( $part ){
$partt = intval( $part );
switch( $partt ){
case 1:
$url = "x4";
break;
case 2:
$url = "x3";
break;
case 3:
$url = "x2";
break;
case 4:
$url = "x1";
break;
default:
echo $partt;
break;
}
}
использование elseif
function arr($part){
$partt=intval($part);
if($partt==1){
$url="x4";
}
elseif($partt==2){
$url="x3";
}
elseif($partt==3){
$url="x2";
}
elseif($partt==4){
$url="x1";
}
else{
echo $partt;
exit;
}
return $url;
}
Попробуйте использовать else if
, Ваш еще бежал, когда $partt != 4
function arr($part)
{
$partt = intval($part);
if ($partt == 1) {
$url = "x4";
} else if($partt == 2) {
$url = "x3";
} else if($partt == 3) {
$url = "x2";
} else if($partt == 4) {
$url = "x1";
} else {
echo $partt;
exit;
}
}