如何将php变量的值传递给jquery

我有一个php变量:

$name_of_current_page 

我在我的视图中可以使用,并且我希望将值提供给jquery。 是这样做的最佳方式如下?

 $(document).ready(function () { var current page = "" ; }); 

这取决于您是否使用某种模板引擎。

  1. 如果你使用普通的PHP,唯一的选择就是echo显变量:

     var current page = ""; 
  2. 树枝引擎:

     var current page = "{{ your_var }}"; 
  3. Smarty和RainTPL引擎:

     var current page = "{$your_var}"; 

如您所见,还有其他方法。 所有这些都很好。 这实际上取决于您希望如何编写和组织代码。 我个人使用Twig,发现它非常简单,快速和直接。

此外,正如其他人所指出的,您可以对服务器执行AJAX调用并获取类似的变量。 我发现这种方法耗时,低效且不安全。 如果选择此方法,则会将请求发布到脚本。 每个人都可以对该脚本发送/获取请求,从而打开了一些机器人和DoS / DDoS攻击的大门。

var current page =“”;

我不认为你可以在变量中有空格。 (我可能是错的)。

无论如何要简化你的代码,我刚刚完成了稍微重做。

 $name_of_current_page = "HomePage"; 

对于Javascript;

 var currentPage = ""; 

那应该是它。

document.title应该给你你需要的东西..这样的东西要么查询DOM,要么是Ajax imho。

我发现最好将图层分开,而不是将演示文稿和控制器与带有胡椒的html / php代码混合在一起。

首先,你问的是,填充客户端代码是一种正常的方式,但是这一个将在页面加载时加载,如果你想在页面加载时在live上运行它,你必须使用ajax,原因是关于如何与服务器端脚本通信的方式,一旦页面加载,jquery或javascript就不可能加载php vars