我试图动态加载CSS,JS和其他部分,而我遇到的事情有点混乱。这并不会影响功能,因为我不喜欢看到源代码时看到的内容。 我认为它是我的来源
你可以看到它在那里。它有效,但男人是那么凌乱! 我想要它做的是在每个源之间有一个新的行,我用来提取这些信息的代码是
function LoadTheme($argument) {
switch($argument) {
case "active":
$theme = Frontend; break;
default: $theme = $argument; break;
}
$configFile = "config.json";
$configPath = frontend.'/'.$theme.'/'.$configFile;
$themePath = frontend.'/'.$theme.'/';
if(file_exists($configPath)) {
LoadThemeIncludes($configPath,$themePath);
}
else {
echo "Fatal Error. No theme Configuration Found";
}
}
function LoadThemeIncludes($configPath,$themePath) {
$string = file_get_contents($configPath);
$json_a = json_decode($string, true);
$stylesheets = $themePath.''.$json_a['includes']['css'].'/*.css';
foreach(glob($stylesheets) as $stylesheet) {
echo '<link rel="stylesheet" type="text/css" href="'.ConvertURL($stylesheet).'" media="screen" />';
}
}
function ConvertURL($path) {
$cv = str_replace(public_p, $_SERVER['HTTP_HOST'], $path);
return $cv;
}
我使用的配置文件是一个格式化的json文件:
{
"details": {
"author": "Morgan Green",
"details": "Revelio Theme",
"lastUpdate": "6/17/2016"
},
"includes": {
"parts": "parts",
"script": "jscript",
"css": "css",
"fonts": "fonts",
"images": "images",
"templates": "templates",
"functions": "functions.d"
},
"options": {
"layout": "mod_right"
}
}
我想要实现的是当用户查看来源时,他们不会看到它像图片一样包裹,而是 来源在每一个之后会有一个新的行。
答案 0 :(得分:1)
要打印新行:
echo PHP_EOL;
答案 1 :(得分:1)
在PHP中,您可以使用\r\n
回显一个新行。
所以你必须改变函数LoadThemeIncludes
中的for-each-loop:
foreach(glob($stylesheets) as $stylesheet) {
echo '<link rel="stylesheet" type="text/css" href="'.ConvertURL($stylesheet).'" media="screen" />' . "\r\n";
}
或者像其他答案中提到的那样,你可以使用常量PHP_EOL
。