我正在创建一个网站,用PHP函数存储网站的基本代码,这样我就不必一遍又一遍地写出基本代码。在我的index.php页面中,我让它调用一个名为head的函数并传入几个变量。
这是我的index.php页面的代码:
<?php
include "base.php";
head("Home");
?>
它包含文件base.php,其中包含函数head。
这是头部功能:
<?
function head($title) {
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title><?="$title | BASE"?></title>
<link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/main.css">
</head>
</html>
<?php
}
?>
正如您所看到的,head函数要求输入一个名为$ title的变量,并将其作为“Home”传入index.php。当页面执行而不是显示标题的Home | Base
时,标题显示为<?="$title | BASE"?>
。这是为什么?我需要标题显示为Home | Base
,我不知道为什么它没有像那样出现。
答案 0 :(得分:1)
您需要启用short_open_tag
才能在以前版本的PHP中使用<?= $var; ?>
语法(如果您使用的是PHP 5.4之前的版本)。
当然,您可以简单地使用标准PHP语法,以便更改
<?="$title | BASE"?>
到
<?php echo "$title | BASE"; ?>
如果您使用PHP&lt; 5.4或无法设置short_open_tag
已启用
答案 1 :(得分:-3)
将$ title变量放在大括号中<?= echo "{$title} | Base"; ?>
或使用.
连接<?= $title . " | Base"; ?>
这将解析变量值而不是回显名称。只需将变量名称放在引号
中