我面临的问题; Javascript用php变量编码

时间:2013-02-16 01:13:19

标签: php javascript

我似乎遇到了问题, 我有一个Javascript代码,它包含php变量

<?php   // Database information 
$name="whatever"; 

$mp3 = "Link/to/track/";
echo "
var myPlaylist = [{
    mp3:'mix/4.mp3',
    title:'$name',
}]]; </script>";

在尝试对此进行编码时,我能够对Javascript部分进行编码,但它会显示我的变量名称(在本例中为$ name)而不是值(无论如何)

2 个答案:

答案 0 :(得分:2)

每当您像这样在PHP和JS之间传输信息时,请使用json_encode。 1)您知道您正在构建一个正确的JavaScript结构(在您的代码中,您不是......您正在关闭数组两次),以及2)您可以避免逃避问题。尝试:

<?php
$name = 'whatever';
$mp3 = '/link/to/track';

$json = array(array('mp3' => $mp3, 'title' => $name));
print "var myPlaylist = " . json_encode($json);

答案 1 :(得分:0)

这应该有效,但无论如何都要试试

title:'".$name."',

title:'{$name}',

由于你使用双引号它应该渲染php变量,单引号不会,但你没有使用它们。还要确保逃避名称,因为如果它有一个单引号怎么办?它会破坏你的javascript(除非它严格控制,你知道它不会有单引号)。