在 JS 中显示一个 PHP 变量
Displaying a PHP variable inside JS
我今天花了很大一部分时间来解决这个问题。但是不能。
基本上,我想在 PHP 页面中嵌入 Youtube 视频。 videoid
变量在 PHP 页面中定义,但我无法让 JS 显示该变量。
<script>
// Load the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('ytplayer', {
height: '460',
width: '760',
videoId: '<? echo $var;>'
});
}
</script>
$var
变量全局存在于 PHP 文件中,但它不起作用。我还在 JS 中声明了一个变量,但没有成功。我做错了什么?
编辑:
因为它被标记为重复,让我解释一下。我对如何输出 PHP 变量没有任何问题,无论我如何尝试,它都不起作用。
使用 Smarty 作为模板引擎,您通常必须将脚本代码放在 {literal}
标记内,因此要在文字标记内执行实际 php 代码,您必须将 php 文字之外的代码,因此您可以在脚本中转义所有 { }
或为您的 echo 打破文字,不漂亮但应该工作:videoId: '{/literal}{$var}{literal}'
我今天花了很大一部分时间来解决这个问题。但是不能。
基本上,我想在 PHP 页面中嵌入 Youtube 视频。 videoid
变量在 PHP 页面中定义,但我无法让 JS 显示该变量。
<script>
// Load the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('ytplayer', {
height: '460',
width: '760',
videoId: '<? echo $var;>'
});
}
</script>
$var
变量全局存在于 PHP 文件中,但它不起作用。我还在 JS 中声明了一个变量,但没有成功。我做错了什么?
编辑:
因为它被标记为重复,让我解释一下。我对如何输出 PHP 变量没有任何问题,无论我如何尝试,它都不起作用。
使用 Smarty 作为模板引擎,您通常必须将脚本代码放在 {literal}
标记内,因此要在文字标记内执行实际 php 代码,您必须将 php 文字之外的代码,因此您可以在脚本中转义所有 { }
或为您的 echo 打破文字,不漂亮但应该工作:videoId: '{/literal}{$var}{literal}'