两个PHP函数–全局变量封装和http验证代码_自学
来源:自学PHP网
时间:2014-12-04 22:12 作者:
阅读:次
[导读] _G将所有的全局变量封闭到一个变量内部,便于控制和处理。将设置和取值融合到一个函数中。 /** * 全局变量的封存 */if(!function_exists('_G')) {function _G($name,$value = NULL){if(!isset($GLOBALS['SOCK...
_G将所有的全局变量封闭到一个变量内部,便于控制和处理。将设置和取值融合到一个函数中。
/**
* 全局变量的封存
*/
if(!function_exists('_G')) {
function _G($name,$value = NULL){
if(!isset($GLOBALS['SOCKET_G'])) {
$GLOBALS['SOCKET_G'] = array();
}
static $G ;
$G = $GLOBALS['SOCKET_G'];
if ($value == NULL) {
return isset($G[$name]) ? $G[$name] : NULL;
} else {
$G[$name] = $value;
$GLOBALS['SOCKET_G'] = $G;
}
}
}
http验证,简单的输入用户名密码,可以灵活的修改,只需要修改传递到函数的参数就可以了!
/**
* 简单的http验证
* @param string $msg 提示信息
* @param string $u 验证用的用户名
* @param string $pwd 验证用的密码
*/
function httpauthen($msg,$u = "admin",$pwd="admin"){
if(!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="'.$msg.'"');
header('HTTP/1.0 401 Unauthorized');
exit();
} else {
if($_SERVER['PHP_AUTH_USER'] == $u && $_SERVER['PHP_AUTH_PW'] == $pwd ) {
return ;
}else {
header('WWW-Authenticate: Basic realm="'.$msg.'"');
header('HTTP/1.0 401 Unauthorized');
exit();
}
}
}
|
|