以下代码不会显示任何输出,因为变量在echo下面声明,因为PHP逐行执行。有没有办法在整个页面中搜索变量然后执行代码?
<?php
include "header.php";
$title = "Test";
?>
header.php
<html>
<head>
<title><? echo $title ?></title>
</head>
答案 0 :(得分:5)
您需要了解compilers / interpreters的工作原理。 PHP是解释语言,可以编译允许您解释PHP的二进制文件。
PHP从上到下运行。
所以就像
<?php // start from here
echo "$title"; <-- $title is undefined here
$title = "Test"; <-- now you declared $title with value so it goes in memory now
//end
因此,您需要首先检查天气$title
是否设置,然后根据它进行响应
if(isset($title)){
echo $title;
}
答案 1 :(得分:-1)
根据你的逻辑,我建议你使用如下的含义: 创建一个单独的文件,比如说constant.php并将其包含在所有其他页面上
<?
define("TITLE", "This is title");
?>
使用如下:
<?php echo TITLE;?>
由于