前端修改的数据能及时反馈到后端,那当然需要一个前后端都可以无障碍读取的东西,所以最初是想要用localstorage,但发现php无法直接读取其值,所以就换成了cookie。
前端通过js来设置参数值:
document.cookie='lang=zh-CN';
后台根据参数值来提供对应的反馈:
$language = $_COOKIE['lang'] ?? Helper::options()->AugLang;
I18n::setLang(AUG_THEME_DIR . '/langs/' . $language . '.mo');
尝试了一下方案是切实可行的,但菜单类与设置项这些固定内容,实现实时翻译应该不难,比较麻烦的是文章内容以及摘要这些直接从函数返回的内容。