我有一个需要本地化的 JavaScript 代码,即。
function js_proc() {
var some_data = 'this text needs to be translated dynamically at runtime';
}
所以我这样重写:
function js_proc() {
var some_data = <?php echo $this->lang->line('some_data_id'); ?>;
}
在视图中,我这样写了js链接:
<script type="text/javascript" src="www.domain.com/codeigniter/get_js/file-1/"></script>
它调用控制器中的函数 get_js() 。这个想法是让 get_js() 函数读取 js 文件并翻译语言字符串......
有太多的js字符串需要翻译,所以我无法通过every string
作为变量。理想情况下,我想通过 codeigniter 语言文件来完成这项工作。
我的问题是:有没有办法解析 js 文件中的 php 部分并执行(=翻译)它们? ie.
class App extends CI_Controller
{
function get_js {
$content = file_get_contents($js_file);
echo parse_php($content);
}
...
}
Thanks!
根据语言文件的大小,允许 javascript 访问整个语言数组的快速方法可能是将数组加载到全局 javascript 数组中;
<script>
var globalLang = <?php echo json_encode($this->lang->language); ?>;
</script>
然后像这样在你的javascript中访问;
globalLang['some_lang_key']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)