2012-07-16 33 views
0

我想从php页面隐藏未使用的js和css文件。如何隐藏特定页面的js和css文件

某些js文件未被某些页面使用,所以我想隐藏它们。通过隐藏它们,我可以使网页更快,并在页面测试中取得好成绩。

我用简单的php代码来隐藏一个页面的代码。工程很好,该文件对该页面是隐藏的,对于其他页面代码不起作用。这是显示文本,而不是链接,就像在textarea的文字..

<?php 
    function curPageName() { 
     return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1); 
    } 
    $currentp=curPageName(); 

    if($currentp=="main1.php"){ 
     echo ""; 
    } else { 
     //works 
     echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"../rws.css\"  />"; 
     /// not works 
     echo "<link type=\"text/css\" rel=\"stylesheet\" href=\"http://img.y.com/rws.css\"  />"; 
    } 
?> 

的代码适用于/rws.css,如果我用一个http://url.com/rws.css它不会。

+0

有效的HTML将是一个很好的开始。 – 2012-07-16 23:32:19

回答

1

下面的例子:

<?php 

function get_current_file_name() { 
$Exploded_Data = explode(‘/’, $_SERVER['PHP_SELF']); //explode the path to current file to array 
$Exploded_Data = array_reverse ($Exploded_Data); //reverse the arrays order cos php file name is always after last/
$CurrentPage = $Exploded_Data[0]; // assign the php file name to the currentpage variable 
return $CurrentPage; 
} 

$CurrentPage = get_current_file_name(); 

if($CurrentPage!="main1.php"){ 
    echo('<link type="text/css" rel="stylesheet" href="style1.css" />'); 
} 
else if$CurrentPage!="main2.php"){ 
    echo('<link type="text/css" rel="stylesheet" href="style2.css" />'); 
} 


?> 

可以使用__FILE__代替$_SERVER['PHP_SELF']

+0

脚本中的一些小错误,很好的工作.. – PHP 2012-07-16 23:49:24

+0

代码仍然显示计划文本,如果我使用http://img.y.com/rws.css,它只能在没有http:// – PHP 2012-07-16 23:55:50

1

代码是否获得正确的当前页面并且它正在进入ELSE?

您可以使用单引号引号和双引号内部以确保您不会错过任何转义。

if($currentp!="main1.php"){ 
    echo('<link type="text/css" rel="stylesheet" href="http://img.y.com/rws.css" />'); 
} 
+0

它不工作..仍然代码不可执行。它看起来在计划文本 – PHP 2012-07-16 23:33:10

+0

它只适用于路径/rws.css。但如果我使用http://url/rws.css路径,它不会 – PHP 2012-07-16 23:35:04

+0

你在哪里“回声”这个文本?你能分享你完整的代码吗? – gmogames 2012-07-16 23:38:25