将PHP变量传递给JSON

时间:2015-01-21 23:03:17

标签: php json

我是JSON sintax的新手,我需要帮助才能传递一些结果,我已经通过php从数据库中提取到JSON代码。这是代码:

<?php
        $id_num = urldecode (intval($_REQUEST['id_cod']));
        $rs = $lista->noticias_testa(1,$id_num);
        $result = mysql_num_rows($rs);

        $rs = $lista->noticiaAll($id_num);
        $result = mysql_num_rows($rs);

        $audio = "files/audios/".mysql_result($rs,0,"audio");
        $title_audio = mysql_result($rs,0,"title_audio");
    ?>

这个JSON用于填充我的mp3播放器的播放列表

<script type="text/javascript">
    //<![CDATA[
    $(document).ready(function(){

        new jPlayerPlaylist({
            jPlayer: "#jquery_jplayer_1",
            cssSelectorAncestor: "#jp_container_1"
        }, [
            {
                title:"place to put php variable $title_audio",
                mp3:"path to the music.mp3",                   
            },
        ]);
    });
    //]]>
</script>

我想将php变量&#34; $ audio&#34; 传递给JSON &#34; mp3路径&#34; 标题

提前致谢

2 个答案:

答案 0 :(得分:0)

我不确定在做什么,但我认为你需要json_encode

它会使你的php对象/数组成为json字符串。

<?php
$json = array('audio' => $audio,
              'title_audio' => $title_audio);

$json = json_encode($json);
?>

然后,您可以将其输出为html / javascript。

<script type="text/javascript">';
    var myObject = <?php echo $json; ?>;
</script>

现在您可以在javascript中访问您的数据

myObject.audio                 // will contain your audio file
myObject.title_audio           // will contain your number of tracks

答案 1 :(得分:-2)

如果这两行代码存在于同一个.php文件中,那很简单,只需进入javascript部分并回显PHP变量,如下所示:

<script type="text/javascript">
//<![CDATA[
$(document).ready(function(){

    new jPlayerPlaylist({
        jPlayer: "#jquery_jplayer_1",
        cssSelectorAncestor: "#jp_container_1"
    }, [
        {
            title:""+<?php echo $title_audio; ?>+"",
            mp3:""+<?php echo $audio; ?>+"",                   
        },
    ]);
});
//]]>

提示:您可以使用更短的语法,例如:

{ 
    title:""+ <?=$title_audio ?> +"",
    mp3:""+ <?=$audio ?> +"",                 
},