"PHP" / Говнокод #18204 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
$act = isset($_REQUEST['act']) ? $_REQUEST['act'] : '';
	
	if ($act == 'details') {
		orders_details();
	} elseif ($act == 'details_xls') {
		orders_details_xls();
	} elseif ($act == 'set_status') {
		orders_set_status();
	// ... ещё строчек 30
	} else {
		orders_list();
	}

Так мы реализуем роутер

Запостил: Tairesh Tairesh, (Updated )

Комментарии (5) RSS

  • Хмммм...
    handlers = array('details'=>'order_details',);
    $handlers[( (isset($_REQUEST['act']) and array_key_exists($_REQUEST['act'], $handlers) ? $_REQUEST['act'] : 'list' )]();

    ...блин, так еще говнокоднее
    Ответить
  • Если кода не много рефакторится в 15 минут.
    Делается класс в него все что в ифах в методы.
    В точке входа по параметрам определяем какой экземпляр класса нужен. Делаем экземпляр рефликсией получаем список аргументов метода все, что по именам совпадает с параметрами запроса передаем в метод.
    ???
    Профит.

    Если кода много тоже самое только ебатни много лень.
    Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8