php - 在 Javascript 代码中使用 PHP 代码

标签 php javascript

因为我知道许多人认为在 Javascript 代码中使用 PHP 代码是不好的做法,所以我想知道如何在某个 PHP 变量具有特定值的情况下执行 JavaScript 函数。

这是我目前编写代码的方式:

<script type="text/javascript">
function execute_this() {
some code;
}
<?php
if(!empty($_SESSION['authorized'])) :
?>
execute_this();
<?php
endif;
?>
</script>

在这个特定的例子中,有什么想法可以避免在 Javascript 中使用 PHP 吗?

最佳答案

如果你不想在 javascript 代码中包含任何 PHP 代码,但想知道 php 变量的值,则必须集成服务器端(PHP)和客户端(JS)之间的通信

例如,您可以使用 ajax 请求来调用一个小的 php 片段,该片段在其回复中提供值。使用该值,您可以继续执行 Java 脚本代码。

在我看来,你应该决定是否值得付出努力。

编辑:

关于编辑后的问题:如果 PHP session 值不存在时永远不会调用 JS 函数这一点很重要,我会保留 PHP 代码,但会这样做:

<?php
if(!empty($_SESSION['authorized'])) :
?>
<script type="text/javascript">
function execute_this() {
some code;
}

execute_this();
</script>
<?php
endif;
?>

如果您在 JavaScript 中评估 session 变量的值,则必须确保如果提供的值被操纵,您的代码不会发生任何不良情况。

关于php - 在 Javascript 代码中使用 PHP 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14849935/

相关文章:

php - 如何在 postgresql 查询中使用 php 变量

php - 错误 : Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR

php - 如果 END 之前没有未结束的 START,那么替换/删除 END 的正则表达式是什么?

javascript - Node.JS/Express/Mongodb/Mongoose 简单连接问题

php - 如何连接到 WAMP 服务器上的 MySQL?

php - 将请求重定向到另一个类

javascript - 如何从 JavaScript 中的 URL 中提取查询字符串参数

javascript - 组件重新渲染后 react 谷歌地图标记消失

javascript - 如何获取函数的字符串名称以便在 JavaScript 中调用它?

javascript - AngularJS Controller 内函数的 AddEventListener