Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
6 / 6 / 5
Регистрация: 15.01.2016
Сообщений: 220
1

Из If/else в switch/case

30.03.2017, 15:58. Показов 557. Ответов 5
Метки нет (Все метки)

Необходимо добавить 3й вариант/язык (de) в этот код:

PHP
1
2
3
4
5
6
7
8
9
10
        if ($user_lang_settings) {
            $return_val[] = ($user_lang_settings == 'ru')
                ? 'translations/ru_ru/'
                : 'translations/en_gb/';
            $return_val[] = ($user_lang_settings == 'ru') ? 'ru' : 'en';
 
            return $return_val;
        } else {
            return false;
        }
можно использовать switch? есть у кого какие соображения?

Добавлено через 19 минут
примерно так должно получится?

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
switch ($user_lang_settings) {
            case ($user_lang_settings == 'ru'):
                $return_val[] = 'translations/ru_ru/';
                break;
            case ($user_lang_settings == 'en'):
                $return_val[] = 'translations/en_gb/';
                break;
            case ($user_lang_settings == 'de'):
                $return_val[] = 'translations/de_de/';
                break;
            default:
               return false;
                break;
        }
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2017, 15:58
Ответы с готовыми решениями:

Switch case
Добавила на одной странице 2 конструкции switch case. Проблема в том что когда вывела значения по...

Порядок case'ов в switch'е
Добрый день такой вопрос есть цикл switch. И вот обычно идет такой порядок в switch 1.2.3.4.5 это...

switch case в mysql_fetch_array
Имеется столбец в БД - extension (пример данных: .jpg+.vsd+.docx+) Я хочу вывести расширение для...

о конструкции switch case
если в данной конструкции в операторный список для case не поставить break, управление передается в...

5
1803 / 1111 / 404
Регистрация: 13.06.2013
Сообщений: 3,756
30.03.2017, 16:09 2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
switch ($user_lang_settings) {
    case ($user_lang_settings == 'ru'):
        $return_val[] = 'translations/ru_ru/';
        break;
    case ($user_lang_settings == 'en'):
        $return_val[] = 'translations/en_gb/';
        break;
    case ($user_lang_settings == 'de'):
        $return_val[] = 'translations/de_de/';
        break;
    default:
       return false;
        break;
}
 
$return_val[] = $user_lang_settings;
 
return $return_val;
1
6 / 6 / 5
Регистрация: 15.01.2016
Сообщений: 220
30.03.2017, 16:14  [ТС] 3
tarasalk,

я так понял else {return false;} заменяется в switch на default: return false; ?

и тут же ещё второй if

PHP
1
$return_val[] = ($user_lang_settings == 'ru') ? 'ru' : 'en';
0
1803 / 1111 / 404
Регистрация: 13.06.2013
Сообщений: 3,756
30.03.2017, 16:25 4
Цитата Сообщение от And82 Посмотреть сообщение
я так понял else {return false;} заменяется в switch на default: return false; ?
да
Цитата Сообщение от And82 Посмотреть сообщение
и тут же ещё второй if
Я учел это добавив строчку
PHP
1
$return_val[] = $user_lang_settings;
0
6 / 6 / 5
Регистрация: 15.01.2016
Сообщений: 220
30.03.2017, 16:35  [ТС] 5
есть кто проверить может?

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
if ($user_lang_settings) {
            switch ($user_lang_settings) {
                case ('ru'):
                    $return_val[] = 'translations/ru_ru/';
                    $return_val[] = 'ru';
                    break;
                case ('en'):
                    $return_val[] = 'translations/en_gb/';
                    $return_val[] = 'en';
                    break;
                case ('de'):
                    $return_val[] = 'translations/de_de/';
                    $return_val[] = 'de';
                    break;
                default:
                    $return_val[] = 'translations/ru_ru/';
                    $return_val[] = 'ru';
                    break;
            }
            $return_val[] = $user_lang_settings;
 
            return $return_val;
        } else {
            return false;
        }
0
Фрилансер
Эксперт JSЭксперт HTML/CSSЭксперт PHP
1842 / 1339 / 598
Регистрация: 12.01.2011
Сообщений: 5,407
30.03.2017, 16:57 6
Цитата Сообщение от tarasalk Посмотреть сообщение
PHP
1
case ($user_lang_settings == 'ru'):
PHP
1
case 'ru':
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2017, 16:57

Switch-case в printf
Здравствуйте, как вставить switch-case в printf. Например у меня цикл $result =...

Как определить стринг переменную перед switch case чтобы происходило
Как определить стринг переменную перед switch case чтобы происходила ее обработка в одном из case ,...

Как определить стринг переменную перед switch case чтобы происходило
Как определить стринг переменную перед switch case чтобы происходила ее обработка в одном из case...

Изменить case в switch
Подскажите пожалуйста, как это решить. $a = 1; switch ($a) { case "1": { какой-то код;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru