Php 在没有jquery的情况下加载页面后加载自定义标题类
我有一个自定义类,可以创建我所有的头部html(css/js页面)。在这个类中,我有一个添加特定于元素的js和css页面的方法。例如,我有一个导航类,它创建了一个需要链接特定javascript页面的导航栏。现在,我一直在调用header类中的一个方法,将特定的js页面添加到静态变量中,然后当调用Php 在没有jquery的情况下加载页面后加载自定义标题类,php,html,css,Php,Html,Css,我有一个自定义类,可以创建我所有的头部html(css/js页面)。在这个类中,我有一个添加特定于元素的js和css页面的方法。例如,我有一个导航类,它创建了一个需要链接特定javascript页面的导航栏。现在,我一直在调用header类中的一个方法,将特定的js页面添加到静态变量中,然后当调用header::generateHeader方法时,它会将正确的js/css页面和输出添加到html中 我的问题是,在调用页面上的其他方法之后,我需要调用generateHeader,否则在Header
header::generateHeader
方法时,它会将正确的js/css页面和输出添加到html中
我的问题是,在调用页面上的其他方法之后,我需要调用generateHeader
,否则在Header类中不会设置静态变量
有什么新的想法吗?我认为不可能在后面调用generateHeader,因为我需要输出位于页面顶部。我想不惜一切代价避免jquery,并不是说我反对它,我只是不希望整个css依赖于jquery
<html>
<head>
<?= Header::generateHeader ?>
</head>
<body>
<?= Navigation::generateNavigation ?>
<?= SomeOtherClass::someOtherMethod ?>
</body>
</html>
只需将值保存到变量中,并按所需顺序调用它们即可
<?php
$nav = Navigation::generateNavigation();
$otherClass = SomeOtherClass::someOtherMethod();
$header = Header::generateHeader();
?>
<html>
<head>
<?= $header ?>
</head>
<body>
<?= $nav ?>
<?= $otherClass ?>
</body>
</html>
因为代码是自上而下运行的,所以不能让它在前一个方法之前调用后一个方法。您可以执行类似于打开输出缓冲并捕获所有输出的操作。然后用占位符替换对generateHeader的调用。然后在脚本的底部,在一切运行完毕后,获取缓冲区,str_用generateHeader的结果替换占位符。模板系统的基本功能。