本代码演示了php中如果通过cookie存储用户的选择,更换皮肤样式表
saveStyleSheet.php <?php function styleSheet($currentCookie){ # Get Current Style Sheet $currentCookie = $_COOKIE["StyleSheet"]; # Get New cookie file name switch($_GET['style']){ case 1: $value = 'style1.css'; break; case 2: $value = 'style2.css'; break; case 3: $value = 'style3.css'; break; default: $value = 'style.css'; break; } # If the user views this page, without using # style=... then set cookie to the default if(!isset($_GET['style'])){ $value = 'style.css'; } # If the new value doesn't equal the old value allow cookie change if(isset($value)||$currentCookie!=$value||isset($currentCookie)){ setcookie("StyleSheet", $value, time()+600000); /* expires in 10,000 hours*/ return $_COOKIE["StyleSheet"]; }else{ return $_COOKIE["StyleSheet"]; } if(isset($_GET['style'])){ header("Location: ".$_SERVER['HTTP_REFERER']); exit; } } ?> index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>My Test Page</title> <?php include("saveStyleSheet.php"); if(isset($_COOKIE["StyleSheet"])){ ?> <link rel="stylesheet" type="text/css" href="stylesheets/%20<?php%20echo%20styleSheet($_COOKIE["StyleSheet"]); ?> " /> <?php }else{ ?> <link rel="stylesheet" type="text/css" href="stylesheets/style.css" /> <?php } ?> </head> <body> <a href="saveStyleSheet.php?style=1">Style Sheet 1</a><br /> <a href="saveStyleSheet.php?style=2">Style Sheet 2</a><br /> <a href="saveStyleSheet.php?style=3">Style Sheet 3</a><br /> <a href="saveStyleSheet.php">Default Style Sheet</a> </body> </html>