CodeIgniter 将其日期类的时区存储在
system/language/english/date_lang.php
我想更改此文件中的字符串,以便
$lang['UM12'] = '(UTC -12:00) Baker/Howland Island';
$lang['UM11'] = '(UTC -11:00) Samoa Time Zone, Niue';
而是
$lang['-12:00'] = '(UTC -12:00) Baker/Howland Island';
$lang['-11:00'] = '(UTC -11:00) Samoa Time Zone, Niue';
这可能吗?
我对一行UM__
部分所做的任何更改都会使其在下拉列表中显示为空白。其余(未更改)行显示为正常。
我还尝试将该文件克隆到具有类似不良结果的application/language/english/
。
对此有什么见解吗?
看起来这需要对date_helper.php
文件进行黑客攻击,而我不愿意这样做。
相反,CI 中的日期类具有 timezones()
函数,允许您从例如 UM5
转换为 -5
。在这种情况下,可以将此功能包装在来自视图/下拉列表的U__
值周围 - 然后将其作为-5
或其他INT
保存到数据库。
由于我想在同一下拉列表中向用户显示他们选择的时区,因此我被迫具有U__
和INT
时区格式的数据库字段。据我所知,没有 CI 函数可以从 -5
转换为 UM5
.
因此,对于用户,我将U__
格式拉入视图中以自动填充下拉列表。
对于时区转换等,我使用 INT
格式。