php数组加载到javascript

标签 php javascript arrays load

所以我完全是个 php/javascript 菜鸟。

我正在尝试将完整的 php 数组加载到 javascript 数组中。 我为 Javascript 写了这个:

    var names = new Array();
for(var i = 0; i < 48; i++) {
    names[i] = "<?php echo giveJS() ?>";
}

这是 php 的

static $counter = 0;

function giveJS() {
    global $names;
    global $counter;
    $counter++;
    return $names[$counter]; 
}

我已经检查过 php 数组是否正确填充了数据。 当我用 javascript 编写输出行时,比如

document.write(names[10]);

它只给了我 php 数组中的第一个条目,所以似乎每次重复 for 循环都会从头开始初始化 php 文件,因此将计数器设置为 0。 我该如何解决?

最佳答案

在 PHP 中

//Bla being the php array you want to give to javascript. Create it however you like
$bla = array();
$bla[] = 'cat';
$bla[] = 'dog';
$bla[] = 'bat';
echo '<script>var myarray = '.json_encode($bla) .';</script>';

然后上面的代码将输出一个脚本标签,其中包含一个名为 myarray 的变量,然后其内容将是指定上述数组的 JSON(json_encode 将数组格式化为 javascript 内部语法——数组可能看起来像 ['cat' ,'狗',' bat ] )

然后您可以像这样从 JavaScript 数组中获取值:

<script>
 console.log(myarray[2]);
</script>

关于php数组加载到javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9774126/

相关文章:

php - 如何在php中获取内部数组元素的最大值

c++ - 结构类型元素数组的问题

php - 如何删除表单中特定ID的Mysql语句?

javascript - 如何在 Mongoose/MongoDB 中正确构建数据库?

php - 使用 php 替换字符串的每个第二个逗号

javascript - 如何在 JavaScript 的字符串数组中有效地查找包含另一个字符串的组字符串?

javascript - 如何绑定(bind)每次 ng-click 提交一次?

javascript - 代码逻辑javascript数组

php - Soapclient https 请求

javascript - 如何计算同一页面中某件商品的费用?