оператор switch выводит число 1

У меня небольшая проблема, у меня есть готовое заявление.

            $usertype = 1;
switch ($usertype) {

case "0":
echo require 'a.php';
break;
case "1":
echo require 'b.php';
break;
default:
echo require 'c.php';
}

Каждый из трех файлов, которые я вызываю, содержит букву, по которой они названы.
Это утверждение печатает «1» вместе с буквой имени файла.

Например: если $usertype = 1; выход b1 и так далее.

Что может быть причиной этого?

Я получаю тот же вывод, используя оператор if.

Я нашел этот вопрос заданным ранее, но он не очень помог мне.

Почему этот код выводит 1?

Любая помощь будет отличной

1

Решение

пытаться без заявления эха если вы используете echo с require, он вернет логическое значение 0/1, поэтому он также выводит 1.

   $usertype = 1;
switch ($usertype) {
case "0":
require 'a.php';
break;
case "1":
require 'b.php';
break;
default:
require 'c.php';
}
1

Другие решения

Сначала попробуйте без кавычек:

   $usertype = 1;
switch ($usertype) {
case 0:
require 'a.php';
break;
case 1:
require 'b.php';
break;
default:
require 'c.php';
}

А также удалите «эхо», когда вы звоните требовать.

Остальные проблемы связаны с a.php, b.php и c.php.

1

По вопросам рекламы [email protected]