2013-03-26 35 views
0

我有一个名为english.php的文件,其中包含一吨变量值。 $LANG数组的所有部分。在javascript中导入php变量

例子:

$LANG['value_1']="abc";

$LANG['value_2']="xyz";

然后我有使用require_once('english.php');

这是罚款一百万个不同.php文件,但我也有很多的javascript和jQuery插件我正在使用。他们都有外部的.js文件。我怎样才能得到在JavaScript中的值$LANG它可用于.js文件?

我想我需要添加代码到顶部的.js以某种方式读取.php数据,然后再运行其余的javascript代码。我完全不知道该怎么做。

我已经看到了一些可能的想法,但我并不想对一切做大的改写。寻找一个简单的解决方案。任何人都可以帮助这个无知的新手?

=======添加根据收到的意见=======

我现在有与此代码中有一个lang.php详细信息...

<?php 
session_cache_limiter('nocache'); 
session_start(); 
require_once ($_SESSION['language'].'.php'); 


$js_out = json_encode($LANG); 

?> 
<script> 
    var LANG = <?php echo $js_out; ?>; 
    alert(LANG.value_1); 
</script> 

当我访问它成功访问english.php和警报“ABC”

我的问题是,当添加到不同的文件,这并不工作...

<script type='text/javascript' src='lang.php'></script> 
<script> 
    alert(LANG.value_1); 
</script> 
的lang.php

=======编辑,以

由于添加解决方案=======下面的人的意见,我在lang.php文件摆脱了<script>的和它的工作。

我现在有与此代码中有一个lang.php ...

<?php 
session_cache_limiter('nocache'); 
session_start(); 
require_once ($_SESSION['language'].'.php'); 


$js_out = json_encode($LANG); 

?> 

var LANG = <?php echo $js_out; ?>; 
+1

使用'json_encode'并将数据放在某个可以连接到JS的地方。不知道你的项目是如何组织的,很难说。为什么你的JS需要翻译表? – Chad 2013-03-26 16:05:30

+0

您不会从JavaScript获取PHP变量,反之亦然。 PHP将其变量告诉JavaScript。因此,无论您在何处添加脚本(可能位于'

0

你能做到这一点,在其需要看到$ LANG在JavaScript文件一个简单的脚本标签。

1)创建一个PHP文件,该文件呼应$ LANG的JavaScript的表现 - 让我们称之为它lang.php 它应该像做

echo 'var english ="' . $LANG['value_1'] "';"; 

2)在HTML文件,然后U可以使用变量英语等作为正常的JavaScript变量。

<script language="javascript" src="http://whatever.com/lang.php"> </script> 
+0

在原文中查看我的编辑。我添加了更多信息。 – 2013-03-26 17:50:26

+0

删除lang.php中的

0

您可以创建一个PHP文件:

<?php 
header('Content-Type: text/javascript'); 
echo 'var lang = {};'; 
foreach ($LANG as $key => $value) { 
    echo "lang['$key'] = '" . addslashes($value) . "';"; 
} 
?> 

然后链接脚本,您可以使用lang对象:

<script type='text/javascript' src='/path/to/lang.php'></script> 
<script type='text/javascript'> 
alert(lang.value_1); 
</script> 
+0

谢谢@Rapidwolf - 我目前正在尝试基本上这个。把其他评论一起,并基本上想出了你有什么。现在尝试。 – 2013-03-26 16:54:03

+0

在原文中查看我的编辑。我添加了更多信息。 – 2013-03-26 17:45:29

0

取出<script></script>标签时作为链接这可能导致语法错误text/javascript文件。

+0

谢谢 - 正是这个问题。现在工作!!!!! – 2013-03-26 20:40:26