我有一个 php 变量:
$name_of_current_page
我认为这是可用的,我想让 jquery 可以使用该值。最好的方法是像下面这样吗?
$(document).ready(function () {
var current page = "<?php echo $name_of_current_page; ?>" ;
});
这真的取决于您是否使用某种模板引擎。
如果您使用的是纯 PHP,则唯一的选择是echo
变量:
var current page = "<?php echo $your_var; ?>";
树枝引擎:
var current page = "{{ your_var }}";
var current page = "{$your_var}";
如您所见,还有其他方法。他们都工作正常。这实际上取决于您希望如何编写和组织代码。我个人使用 Twig,发现它非常简单、快速和直接。
此外,正如其他人指出的那样,您可以对服务器进行 AJAX 调用并获取这样的变量。我发现这种方法耗时、低效且不安全。如果您选择此方法,您将向脚本发布请求。每个人都可以向该脚本发送/获取请求,这为某些机器人和 DoS/DDoS 攻击打开了大门。
var当前页面= "" ;
我不认为你可以在变量中有空格。(我可能是错的)。
无论如何,为了简化您的代码,我刚刚稍微重做了一遍。
$name_of_current_page = "HomePage";
对于Javascript;
var currentPage = "<?= $name_of_current_page; ?>";
应该是这样的。
document.title
应该给你你需要的东西..这样的事情要么查询 DOM 要么 Ajax 恕我直言。
我发现最好将层分开,而不是将表示和控制器与胡椒的 html/php 代码混合。
首先,你问的是填充客户端代码的正常方式,但是这个会在页面加载时加载,如果你想在页面加载后实时运行它,你必须使用 ajax,原因是与服务器端脚本通信的方式是,一旦页面加载完成,jquery 或 javascript 就无法实时加载 php vars