使用PHP填充JS片段

时间:2011-12-18 20:38:34

标签: php javascript

如何在JS文件中输入PHP数组的结果?

我有这个返回数组的PHP-snippet:

$activiteiten = Project::getProjectnames($_DB);
if(!empty($activiteiten)) {
    foreach($activiteiten as $k => $v) {
        $projectNames[] = $v['project'];
    }
}

如何在这个JS中获取这些值:

<script>
    $(function() {
        var availableTags = [
            "Option 1",
            "Option 2",
            "Option 3",
            "Option 4"
        ];
        $( "#tags" ).autocomplete({
            source: availableTags
        });
    });
</script>

我想要PHP数组而不是Option 1Option 2Option 3,...但是我该怎么做?

我正在使用PHP echo调用生成JS。

3 个答案:

答案 0 :(得分:7)

var availableTags = <?php echo json_encode($projectNames); ?>;

答案 1 :(得分:1)

<script>
    $(function() {
        var availableTags = [
            <?php 
                foreach($activiteiten as $k => $v){
                       echo '"'.$v['project'].'",';
                }
             ?>
        ];
        $( "#tags" ).autocomplete({
            source: availableTags
        });
    });
</script>

答案 2 :(得分:0)

你要做的是json encode那个数组并在javascript的上下文中回显它;从而设置一个等于它的变量。例如:

<script type="text/javascript">
 var availableTags = <?php echo(json_encode($myArray)); ?>
</script>