Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: hoho1 on December 28, 2016, 02:43:04 PM
-
Имеем
$choice= RND (1, 20)
if ($choice=1)
promo_1 ()
end_if
......
if ($choice=20)
promo_20 ()
end_if
Попытка подставить вместо имени подпрограммы конструкцию
STRCONCAT("promo_", $choice)
не сработала.
Можно ли как-то прописАть вызов рандомной подпрограммы не повторяя двадцать раз конструкцию if....end-if
Спасибо
-
Потому что вызов подпрограммы это команда, а не строка.
В любом случае нужно будет условиями делить. Удобней через SWITCH
SWITCH($choice)
CASE(1)
promo_1()
CASE(2)
promo_2()
...........
CASE(20)
promo_20()
END_SWITCH
Кстати, у тебя скобок в вызовах не хватает
-
А что подпрограммы совсем совсем разные? Если нет, может там часть параметров только менять от варианта?
-
Да, к сожалению подпрограммы все разные, посему просто изменением входных параметров не отделаться.
Со скобочками протупил, уже добавил.
-
В любом случае нужно будет условиями делить
Тогда другого выхода не остается, только вынести выбор и набор подпрограмм в отдельный SUB, чтобы не загромождать текст основного скрипта.
$choice= RND (1, 20)
promo ($choice)