2009-06-10 133 views
1

循環我通過這個陣列要循環:如何通過這個數組在PHP

$securePages=array("admin.php","addslot.php","classpost.php"); 

$pagename="admin.php" 

那麼如果admin.php的發現,然後執行此代碼:

header("location:index.php"); 
exit(); 

我怎麼會放在一起這個循環語句?

回答

14
if (in_array("admin.php", $securePages)) { 
    header("location:index.php"); 
    exit(); 
} 
1
foreach($securePages AS $page) 
    { 
     if ($page == "admin.php") 
     { 
      header("location:index.php"); 
      exit(); 
     } 
    } 
+0

我投這件事,因爲它是正確的。但是,這不是最好的方法。看到上面的其他人。 – 2009-06-11 06:27:56

6
if (in_array($pagename, $securePages)) { 
    header("Location: http://example.com/index.php"); 
    exit();  
} 
2
if (in_array($pagename,$securePages)) { 
    header("location:index.php"); 
exit(); 
} 
1

,以防萬一你想知道如何通過一個數組實際上循環。

$securePages=array("admin.php","addslot.php","classpost.php"); 
foreach ($securePages as $value) { 

    //$value is an item in the array. 

} 
3

我想這可能做你想做的事......

$securePages = array("admin.php","addslot.php","classpost.php"); 
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
$url = parse_url($url); 
$path = $url['path']; // bar.php 

if (in_array($path, $securePages)) { 
    header("location:index.php"); 
    exit(); 
} 
+0

是的,正是我的目標,我現在學習PHP非常感謝有用的提示。 – Deyon 2009-06-10 21:47:57