Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> goto 
V
    Опции темы
Muerto
Дата 23.8.2011, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Нужно сделать

Код

if(!empty($place))
    goto $place;


Как посоветуйте это выполнить?

Почему то не принимает переменную...

А то лень switch case или ifelse на страницу ограменную ставить...

Это сообщение отредактировал(а) Muerto - 23.8.2011, 15:30


--------------------
user posted image
PM MAIL   Вверх
Evghenusi
Дата 23.8.2011, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

Репутация: 6
Всего: 15



Цитата(Muerto @  23.8.2011,  15:29 Найти цитируемый пост)
А то лень switch case или ifelse на страницу ограменную ставить...
мне смысл не понятен.

а goto разве работает с переменными? он же только для меток

Добавлено через 3 минуты и 29 секунд
да и goto кажется избавились, теперь можно пользоваться только break

может вам эта ссылка поможет http://md.php.net/manual/en/control-structures.goto.php

Добавлено через 9 минут и 36 секунд
Цитата

Goto

Никаких команд goto не будет добавлено. Однако, команда break расширится статической меткой, поэтому будет возможно написать break foo и это перекинет на метку foo: в вашем коде.
http://www.php.su/articles/?cat=php6&page=php6(хотя может я тороплюсь)
PM WWW   Вверх
Muerto
Дата 23.8.2011, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Ну мне проект сейчас нужно написать, а не через 4 года для php 6  smile 

А только для меток или нет, в этом и стуь проблемы  smile 

А смысл прост...

Есть большая большая страница...
по меню хочу перейти в секцию...
лень скобки выставлять и ифы делать, или свитч-кейсы...

Мне просто попался в руки говнистое подобье фреймворка... а работать нужно...

Считай что каждый data: для goto data; будет как бы controller/action , эт нужно толь ко на одной странице...

В общем пока решил проблему таким образом

Код

switch($place){
    case 'a':
        goto a; 
    break;
    case 'b':
        goto b; 
    break;
    case 'c':
        goto c; 
    break;
    default:            
    break;
}


Это сообщение отредактировал(а) Muerto - 23.8.2011, 16:01


--------------------
user posted image
PM MAIL   Вверх
Evghenusi
Дата 23.8.2011, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


майский жук
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 3.8.2006
Где: Молдова, Кишинёв

Репутация: 6
Всего: 15



Цитата(Muerto @  23.8.2011,  15:53 Найти цитируемый пост)
Ну мне проект сейчас нужно написать, а не через 4 года для php 6  smile 


Цитата(Evghenusi @  23.8.2011,  15:39 Найти цитируемый пост)
(хотя может я тороплюсь) 
__________

так ничего и не понял  smile , но вопрос возник
Цитата(Muerto @  23.8.2011,  15:53 Найти цитируемый пост)
switch($place){
    case 'a':
        goto a; 
    break;
    case 'b':
        goto b; 
    break;
    case 'c':
        goto c; 
    break;
    default:            
    break;
}
где тут переменная $place ?

Добавлено через 37 секунд
аха, догнал, но значение переменной использовать в качестве метки...это дааа, интересно)
не знаю, можно ли так
PM WWW   Вверх
Muerto
Дата 23.8.2011, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Evghenusi Вопрос конечно можно обсуждать и дальше...
Но поскольку у клиента оказываетсчя php 5.2 , пришлось ставтиь switch case на всю страницу без goto  smile 


--------------------
user posted image
PM MAIL   Вверх
Shogun
Дата 23.8.2011, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сёгун-сан
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 8.6.2006
Где: Кишинёв

Репутация: 9
Всего: 11



Ну как вариант чтобы не писать длиные switch или if то можно блоки в функции а саму проверку как-то так:
Код

$default = 'a';
$places = array('a', 'b', 'c', 'd');
$place = in_array($place, $places) ? $place : $default;

call_user_func($place);



--------------------
2b || !2b
PM MAIL ICQ Skype   Вверх
Muerto
Дата 24.8.2011, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Цитата(Shogun @ 23.8.2011,  17:54)
Ну как вариант чтобы не писать длиные switch или if то можно блоки в функции а саму проверку как-то так:
Код

$default = 'a';
$places = array('a', 'b', 'c', 'd');
$place = in_array($place, $places) ? $place : $default;

call_user_func($place);

 Оригинально  smile 


--------------------
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0442 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.