从PHP数组生成JavaScript数组

web*_*kul 4 javascript php

假设我有一个字符串$var:

//php code

$var = "hello,world,test";
$exp = explode(",",$var);
Run Code Online (Sandbox Code Playgroud)

现在我得到的数组exp[0],exp[1],exp[1]'hello','world''test'分别.

我想在javascript中使用这个全部值:

var name = ['hello','world','test'];
Run Code Online (Sandbox Code Playgroud)

如何在PHP中生成JavaScript?

Kar*_*l B 19

我原本认为json_encode这将是最可靠和最简单的方法.

例如

$var = "hello,world,test";
$exp = explode(",",$var);
print json_encode($exp);
Run Code Online (Sandbox Code Playgroud)


Dom*_*ger 5

卡尔 B 的答案更好 - 使用它!

不会像这样更简单的方法:

$var = "hello,world,test";
$var = str_replace(",", "','", $var);
Run Code Online (Sandbox Code Playgroud)

然后,无论您在何处吐出 JavaScript(假设您可以在那里使用 PHP):

var name = ['<?php echo $var; ?>'];
Run Code Online (Sandbox Code Playgroud)

但是,这并不能正确处理引用的值 - 如果您想要那样,最好使用fgetscsvet al.

如果您决定使用explode,那么您可以implode在输出中使用它的另一半,如下所示:

var name = ['<? php echo implode("','", $var); ?>'];
Run Code Online (Sandbox Code Playgroud)