мое приложение разработано в codeigniter. У меня есть таблица, называемая пользовательскими типами в моем db.
id | тип
1 | админ
2 | студент
3 | учитель
Я сравниваю значение id в нескольких местах в моем коде:
<?php
if($id == 1) { do something.. }
else if($id == 2) { do something. }
?>
Вместо использования магических чисел я думал о том, чтобы поместить значения в файл конфигурации следующим образом:
$config['admin'] = 1;
$config['student'] = 2;
Однако, если позже какой-либо другой разработчик добавит новый тип/изменит значение типа в db, тогда они должны будут внести изменения в два места. Так есть лучший способ сделать это?
благодаря
Чтобы ваши данные были более устойчивыми, я бы сказал, используйте redis
.
После этого значения хранилища в redis (вместо сеанса), например,
$this->redis->set($key, $val);
пример
$this->redis->set("user_type",1);// set this at login.
Чтобы получить значение из redis,
$this->redis->get("user_type");
Для этого все, что вам нужно сделать, это получить, файл библиотеки redis и файл конфигурации redis (Avaliabe в CI 3)