php模板添加动态js和css

时间:2014-10-19 19:28:55

标签: php html template-engine

我设计我的php产品页面模板如下:

指数:

<!DOCTYPE html>
<html>
<head>
<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
</head>
<body>

<?PHP include ('dynamicpage.php'); //load dynamic page request example: adduser.php ?>

</body>
</html>

我需要在每个.js中添加.cssdynamicpage.php个文件,如下所示:

adduser.php:

<link href="/user/admin/templates/css/formvalidation.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/formvalidation.min.js"></script> 

<?PHP // code + html ?>

addpage.php:

<link href="/user/admin/templates/css/select2.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/select2.min.js"></script> 

<?PHP // code + html ?>

现在,我需要将动态页面中的daynamic .js.css打印到页面顶部<head></head>,如下所示:

如果我加载addpage.php我的头模板是:

<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/select2.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/select2.min.js"></script> 

如果我加载adduser.php我的头模板是:

<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/formvalidation.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/formvalidation.min.js"></script> 

如何使用任何php函数或类打印.js.css?抱歉,PHP的新用户并不知道。

4 个答案:

答案 0 :(得分:0)

使用它的设置方式是不可能的,而是可以将dynamicpage.php的内容设置为变量并在正文中使用该变量。如果为其他CSS和JS文件设置其他变量,也可以使用它们。

dynamicpage.php的内容可能是这样的:

$css = "dynamicpage.css";
$js = "dynamicpage,js";
$content = "<div>blabla</div>";

您的索引文件可能如下所示:

<?PHP include ('dynamicpage.php'); ?>
<!DOCTYPE html>
<html>
<head>
<link href="/user/admin/templates/css/bootstrap.min.css" rel="stylesheet"> 
<script src="/user/admin/templates/js/jquery-1.10.1.min.js"></script> 
<link href="/user/admin/templates/css/<?php echo $css; ?>" rel="stylesheet"> 
<script src="/user/admin/templates/js/<?php echo $js; ?>"></script> 
</head>
<body>

<?php echo $content; ?>

</body>
</html>

答案 1 :(得分:0)

只需测试以下代码即可获得结果:

的index.php

<?php
  if (isset($_GET['a']) || (!isset($_GET['a']) && !isset($_GET['b']))) {
    include ('link1.php');
  } elseif (isset($_GET['b'])) {
    include ('link2.php');
  }
?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8" />
  <title>Title</title>
  <?=$links?>
</head>
<body>
  <a href="?a">Link 1</a>
  <a href="?b">Link 2</a>
  <?php page(); ?>
</body>
</html>

link1.php

<?php
  $links = 
    '<link rel="stylesheet" href="css/bootstrap.min.css" />
    <link rel="stylesheet" href="css/style.css" />';

  function page() {
?>
  <div>Some HTML code here...</div>
<?php } ?>

link2.php

<?php
  $links = 
    '<link rel="stylesheet" href="css/select2.css" />
    <link rel="stylesheet" href="css/myStyle.css" />';

  function page() {
?>
  <div>Some other HTML code here...</div>
<?php } ?>

将每个代码保存在不同的文件中,并使用与我提供的名称相同的名称,并在本地或远程服务器中进行测试。

答案 2 :(得分:0)

就像我之前在另一个帖子中提到的那样  要链接多个文件,将include放在索引文件的头部,然后你可以通过更新数组来添加要包含的文件。在include文件中添加这个函数,调整路径以适应

 $stylesheets = array('style.css','prettyPhoto.css','nivo-slider.css');
 $scripts = array('core.js','core.js',
                      'jquery-1.4.1.min.js',
                      'jquery-slidedeck.pack.lite.js',
                      'jquery-prettyPhoto.js',
                      'jquery.nivo.slider.js');
foreach($stylesheets as $styles){
   echo "<link rel='stylesheet' type='text/css' href='$styles' />";
 }

 foreach($scripts as $script){
   echo "<script src='$script'></script>";
 }

答案 3 :(得分:-1)

// Dynamic Administration on a Public Hostname (ex: www.example.com)
// Use NO-IP or DYNDNS.ORG for Dynamic Hostname

$conn_ip = $_SERVER['REMOTE_ADDR']; // Your Internet Connection
$host_ip = gethostbyname('your.dynamichost.com'); // Points to your Internet Connection Dynamically

if($conn_ip == $host_ip && $username == "Admin"){

    // Do Admin Stuff

}