Pet*_*ter 2 html php append head
我有一个小型网络项目,其中所有页面都有一个公共头文件,它们在实际页面内容之前导入。头文件类似于以下内容:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/some_script.js"></script>
<link rel="shortcut icon" href="images/web.ico" />
</head>
Run Code Online (Sandbox Code Playgroud)
然后所有页面都有一个,因此它们在开始时<?php include("header.php"); ?>加载标签。<head>
我现在正在编写一个新页面,其中也包括前一个页面header.php,但它需要第二个 javascript 来加载。<script>我可以使用页面中间的标签毫无问题地加载它,但我想知道是否可以将其直接附加到<head>标签,而不是放在 html 代码中间。
实际的代码看起来像这样:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/some_script.js"></script>
<link rel="shortcut icon" href="images/web.ico" />
</head>
<body>
<p>Some text here</p>
<script type="text/javascript" src="js/another_script.js"></script>
<p>Some more text</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我想知道如何实现以下目标:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/style.css" />
<script type="text/javascript" src="js/some_script.js"></script>
<link rel="shortcut icon" href="images/web.ico" />
<script type="text/javascript" src="js/another_script.js"></script>
</head>
<body>
<p>Some text here</p>
<p>Some more text</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我知道使用jQuery或Simple HTML DOM是可能的,但我想知道是否可以在不使用任何其他外部源的情况下实现这一点。
您可以像这样包含header.php :
<?php
ob_start();
include("header.php");
$contents = ob_get_contents();
ob_end_clean();
echo str_replace('</head>', '<script type="text/javascript" src="js/another_script.js"></script></head>', $contents)
?>
Run Code Online (Sandbox Code Playgroud)
代码很简单。您将 header.php 的内容获取到缓冲区,然后在</head>新脚本包含之前添加并将此新内容打印到浏览器。
| 归档时间: |
|
| 查看次数: |
12339 次 |
| 最近记录: |