将PHP数组插入Javascript数组

iam*_*esy 2 javascript php arrays

我有这样一个数组:

Array
(
[0] => Array
    (
        [id] => 9826
        [tag] => "php"
    )

[1] => Array
    (
        [id] => 9680            
        [tag] => "perl"
    )

)
Run Code Online (Sandbox Code Playgroud)

我想将此传递给一个看起来像这样的javascript变量:

var availableTags = [
        "ActionScript",
        "AppleScript",
        "Asp",
        "BASIC",
        "C",
        "C++",
        "Clojure",
        "COBOL",
        "ColdFusion",
        "Erlang",
        "Fortran",
        "Groovy",
        "Haskell",
        "Java",
        "JavaScript",
        "Lisp",
        "Perl",
        "PHP",
        "Python",
        "Ruby",
        "Scala",
        "Scheme"
    ];
Run Code Online (Sandbox Code Playgroud)

我已经走到这一步了:

var availableTags = [
        <?php
                        foreach($Tags as $tag){
                              echo $tag['tag'];
                        }
                    ?>
    ];
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是在每个标记周围添加双引号,并在每个标记之后插入一个逗号.

我不确定如何做到最好?

the*_*iko 10

节省一些代码:

var availableTags = <?php
function get_tag($value) {
    return $value['tag'];
}
echo json_encode(array_map("get_tag", $Tags));
?>
Run Code Online (Sandbox Code Playgroud)

  • @BBonifield - 除了很多人还没有使用> = PHP 5.3之外. (2认同)

Mik*_*kee 6

var availableTags = [
<?php
  $tag_strings = array();
  foreach($Tags as $tag){
        $tag_strings[] = '"'.$tag['tag'].'"';
  }
  echo implode(",", $tag_strings);
  ?>
];
Run Code Online (Sandbox Code Playgroud)