在<head>
标记中存储PHP变量/值有效吗?用这种格式的HTML编写PHP有什么缺点或优点吗?这有关系吗?
我通过W3C验证器对以下代码进行了采样,作为直接输入:
<!DOCTYPE html>
<html>
<head>
<title>PHP Head Test</title>
<?php $data; ?>
</head>
</html>
我得到一个错误:
Line 5, Column 4: Saw <?. Probable cause: Attempt to use an XML processing instruction in HTML. (XML processing instructions are not supported in HTML.)
<?php $data; ?>
但我猜这是因为它正在验证一个包含php代码的.html
文件
我计划使用PHP将经过预处理的MySQL数据存储到一个变量中,以便在Javascript中使用。<head>
是否是存储这些值的合适位置?
注意:我不是想在脑子里打印数据,那太傻了。我询问如何在<head>
中存储从MySQL到PHP(在Javascript中使用)的预处理数据。
不,将PHP变量存储在头中不是正确的方法。事实上,当你这样做时,你的变量不会存储在头内,PHP是服务器端,HTML/CSS/Javascript是客户端。
您希望在输出任何HTML之前存储变量。
然而,如果你这样做:
<head>
<title>PHP Head Test</title>
<?php $data; ?>
</head>
它实际上并没有做任何事情,如果你想显示它,你可以使用echo。如果之前没有声明$data,那么此代码除了声明$data之外什么都不做。
通常,您应该将大部分PHP代码从HTML文件中取出,它们应该在完全不同的文件中,并且PHP代码应该包括HTML文件。在这种情况下,您放入HTML文件中的PHP代码将可以访问包含该代码的文件中可用的所有PHP变量。
我计划使用PHP将经过预处理的MySQL数据存储到要在Javascript中使用的变量。这是存放的合适地方吗这些价值观?
就这样做吧;
<script>
function Myfunction() {
var myVariableGeneratedByPhp = <?php echo $data; ?>;
// use your variable here
}
</script>
您将不得不像这样回显变量:
<?php echo $data; ?>
使用它是有效的,但不适用于大型脚本。在那之后调试会很复杂。be如果你想生成一个动态标签,可以使用它。例如,你需要它。
但你只能打印数据,所以要更改:
<?php $data; ?>
应该是:
<?php echo $data; ?>