我试图混合PHP和JavaScript,因为我的JavaScript需要访问一些PHP变量页面加载时。我无法理解某些东西,并且我已经编写了一个代码示例。PHP与Java语言 - 什么是PHP变量的<script></script>标签内的范围是什么?
<?php
session_start();
$test = 100;
$_SESSION['test'] = 200;
?>
<html>
<head>
<title>Test This Out</title>
</head>
<body>
<h1> Testing Javascript and PHP Mixed </h1>
<p>
<?php
echo("The value of \$test is $test and the value of \$_SESSION['test'] is ");
?>
</p>
<p>
<script type="text/javascript">
<?php
session_start();
if(isset($test)) echo("document.write('Non-session variable exists and is $test <br />');");
else echo("document.write('Non-session variable does not exist<br />');");
if(isset($_SESSION['test'])) echo("document.write('Session variable exists <br />');");
else echo("document.write('Session variable does not exist<br />');");
?>
</script>
</p>
</body>
</html>
输出的样子:
Testing Javascript and PHP Mixed
The value of $test is 100 and the value of $_SESSION['test'] is
Non-session variable exists and is 100
Session variable exists
所以我想了解什么类型的PHP变量的可用于脚本。看来,我已经叫$测试变量是可用的,但即使它知道
$_SESSION['test']
存在,如果我尝试输出该值(以完全相同的方式我输出的
$test
变量),整个系统挂起。
我的问题是:1。 可以在JavaScript中使用PHP的“看”的变量,我定义在页面早些时候? 2.为什么我试图打印
$_SESSION['test']
变量使整个事情崩溃(在所有被渲染什么)? 3.已经是第二
session_start(),
了一个脚本,有必要吗?
感谢您的任何帮助。
我看到你已经得到了一些相当详细/技术答案在这里。如果你在你的教育阶段,所有你需要明白的是,php在javascript之前运行(你需要知道的是php在服务器上运行,而javascript在浏览器中运行)。但是,就立即应用这些知识而言,javascript可以使用PHP设置或计算的数据,但PHP不能使用由javascript创建的数据。得到它? – Marlin