PHP变量作为Javascript变量名
PHP variable as Javascript variable name
我知道这类帖子经常出现在互联网上。但我的问题有点棘手,我没有找到答案。
我想在一个带有变量名的循环中用Javascript创建一个关联数组。($JJ=对象表)($JJ->getResto($DB,$acad)允许我恢复数据库数据)
$JJ = new RestaU();
$JJ = $JJ->getResto($DB,$acad);
for ($i = 0; $i <= sizeof($JJ)-1; $i++) {
//Datas recovering
$lat = $JJ[$i]->loc_lat;
$long = $JJ[$i]->loc_long;
$name = $JJ[$i]->nom;
$ville = $JJ[$i]->ville;
//String treatment to avoid spaces
$ville = str_replace(" ","",$ville);
$name = str_replace(" ","",$name);
echo <<< SC
<script>
//here $ville will contain an google map object associated to the ville name.
//It means that I need to change it for each "for" loop.
var $ville = new Object();
//that is why here I need to have $ville["name"] to generate a table for each city
//and have an access to it later.
$ville+["name"] = new google.maps.LatLng($lat,$long);
console.log(string2);
</script>
SC;
我的问题是,我找不到正确的解决方案,例如ville1["name"]。每次代码没有被"解释",这意味着我可以拥有字符串,但它不会创建我的数组。
非常感谢你的想法!
评论中的解决方案我用过:var string="$ville";window[string]["name"]="blabla";
它真的很好用。
事实上,你不能共享变量
但是您可以将变量打印到javascript代码中,如:
<script>
var myvar = '<?php echo $myvar; ?>';
</script>
如果要将变量从javascript发送到php,则必须使用Ajax
对于阵列
<script>
<?php
$array = array('index1'=>'hellow World!','index2'=>'Iran haven`t nuclear bomb');
echo 'var arryname = new Array();';
foreach($array as $key=>$val){
echo "'n arryname['{$key}'] = '{$val}';";
}
?>
</script>
相关文章:
- 像createComment这样的各种自定义变量名在内联javascript中被覆盖,但在外部js中没有.为什么?
- 这在JavaScript中是一个好的变量名吗
- 在javascript中,在变量名之前使用var有什么区别/优势吗
- 在Javascript中连接一个动态变量名
- JavaScript将字符串转换为变量名
- 根据发送到javascript中函数的参数创建变量名
- 测试JavaScript是否符合异常变量名
- 在javascript中的现有变量名中添加一个变量
- 可以't让JavaScript将ID读取为变量名
- 如何在javascript中访问函数内部的相同变量名
- “parent”不应该用作javascript变量名(保留字)
- PHP变量作为Javascript变量名
- 解决javascript变量名冲突,而不是iframe
- 动态JavaScript变量名
- Javascript变量名是保留字
- JavaScript:变量名无法解析
- Javascript变量名强制转换为字符串
- 来自数组的动态javascript变量名
- 如何增加JavaScript变量名
- 包含函数参数的Javascript变量名