2012-03-29 19 views
0

这有点难以解释,但我会放弃它。可以说我有这个叫做myFile.html一个HTML文件的标题:如何在包含html/php文件时更改所有资产路径?

<!doctype html> 

<head> 

<link rel="stylesheet" href="css/reset.css" /> 
<link rel="stylesheet" href="css/style.css" /> 
<script src="js/hovers.js"></script> 
<link rel="stylesheet" href="css/highlight.css"> 

</head> 

我现在想在一个PHP文件这个文件,让说的index.php。但是,我的所有资产(css,js等)都存储在名为assets /的文件夹中。

在包含(或之前?)此html文件后,是否有方法将所有资产路径更改为指向assets/*。例如,'css/reset.css'将被更改为'assets/css/reset.css'等等。请注意,这不仅限于标题中的这些行,还包括图像元素等内容。

如果这样很混乱,请告诉我,我会再试一次!

干杯:)

回答

0

我通常定义为这样的事情恒定的,那么它是通过一个配置文件易于更换。它的意思是通过你的模板文件并添加这个常量变量,但之后变得很容易。

所以,你的文件应该是这样的:

<?php 
require_once('config.php'); 
include('header.php'); 

config.php会是这样的:

<?php 
define('ASSETS_ROOT','/assets/'); 

header.php会是这样的:

<!doctype html> 

<head> 

<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/reset.css" /> 
<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/style.css" /> 
<script src="<?php echo ASSETS_ROOT; ?>js/hovers.js"></script> 
<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/highlight.css"> 

</head> 
+0

我想到的我希望可能有另一种方式,但我猜不是。谢谢! – chintanparikh 2012-03-29 12:39:35

+0

我想你可以使用缓冲区和正则表达式,或者一个html解析器来完成,但是这些方法会变得非常混乱。 – Nick 2012-03-29 12:46:07

+0

一致认为,它只是使用一个恒定的更清洁:) – chintanparikh 2012-03-29 13:24:58

相关问题