当前位置:  编程技术>php
本页文章导读:
    ▪php中func_num_args与func_get_args函数的例子      首先来看func_num_args函数。 功能:返回传递到函数的参数数目 语法:int func_num_args (void )。 说明:返回传递到目前定义函数的参数数目。如果是从函数定义的外面来呼叫此函数,则func_get_arg( ).........
    ▪分享一个php 用户登录类      php用户登录类,代码: <?php /* * PHP用户登录 * by www. */ class Login { var $username; //用户名 var $userpass; //密码 var $userid; //用户id var $userlevel; //用户级别 var $autht.........
    ▪php session函数集      php session函数集,如下: session_cache_expire函数:获取或者设置当前Session的过期时间  session_cache_limiter函数:获取或者设置当前的cache限制者  session_commit函数:存储Session中的数据并终止Sessi.........

[1]php中func_num_args与func_get_args函数的例子
    来源: 互联网  发布时间: 2013-12-24

首先来看func_num_args函数。

功能:返回传递到函数的参数数目
语法:int func_num_args (void )。

说明:返回传递到目前定义函数的参数数目。如果是从函数定义的外面来呼叫此函数,则func_get_arg( )将会产生警告。

func_num_args( )可以用来结合func_get_arg( )和func_get_args( )来允许使用者定义的函式接受variable-length参数列表。其中,func_get_arg( )从参数列表返回项目,其语法:int func_get_arg (int arg_num),传回定义函数的参数列表的第arg_num个参数,其参数从0开始。且函数定义的外面来呼叫此函数会产生警告;并且当arg_num大于函数实际传递的参数数目时亦会产生警告并返回FALSE。

再来看,func_get_args()函数和func_get_arg()函数的区别:
func_get_args()函数传回一数组,数组的各个元素相当于是目前使用者定义函式的参数列的数目。

在构建PHP类时,灵活使用这三个函数,可以写出更有水准的代码。
例如,在创建PHP和MYSQL链接的类时,可以采用如下的方式:

<?php 
class mydb{
   private $user;
   private $pass;
   private $host;
   private $db;
  
public function __construct(){
   $num_args=func_num_args();
   if($num_args>0){
      $args=func_get_args();
       $this->host=$args[0];
       $this->user=$args[1];
       $this->pass=$args[2];
        this->connect();
    }
} 
?>

    
[2]分享一个php 用户登录类
    来源: 互联网  发布时间: 2013-12-24

php用户登录类,代码:

<?php
/*
 * PHP用户登录
 * by www.
 */
class Login
{
    var $username;    //用户名
    var $userpass;    //密码
    var $userid;    //用户id
    var $userlevel;    //用户级别
    var $authtable=”account”;    //验证用数据表
    var $usecookie=true;    //使用cookie保存sessionid
    var $cookiepath=’/';    //cookie路径
    var $cookietime=108000;    //cookie有效时间
    var $err_mysql=”mysql error”;            //mysql出错提示
    var $err_username=”username invalid”;    //用户名无效提示
    var $err_user=”user invalid”;            //用户无效提示(被封禁)
    var $err_password=”password error”;        //密码错误提示
    var $err;    //出错提示
    var $errorreport=false;    //显示错误
    function Login($dbserv,$dbport,$dbuser,$dbpass,$dbname)    //构造函数,连接数据库
    {
        if(@mysql_pconnect($dbserv.”:”.$dbport,$dbuser,$dbpass))
        {
            mysql_select_db($dbname);
        }
        else
        {
            $this->errReport($this->err_mysql);
            $this->err=$this->err_mysql;
        }
    }
    function isLoggedin()    //判断是否登录
    {
        if(isset($_COOKIE['sid']))    //如果cookie中保存有sid
        {
            session_id($_COOKIE['sid']);
            session_start();
            $this->username=$_SESSION['username'];
            $this->userid=$_SESSION['userid'];
            $this->userlevel=$_SESSION['userlevel'];
            return true;
        }
        else    //如果cookie中未保存sid,则直接检查session
        {
            session_start();
            if(isset($_SESSION['username']))
                return true;
        }
        return false;
    }
    function userAuth($username,$userpass)    //用户认证
    {
        $this->username=$username;
        $this->userpass=$userpass;
        $query=”select * from `”.$this->authtable.”` where `username`=’$username’;”;
        $result=mysql_query($query);
        if(mysql_num_rows($result)!=0)    //找到此用户
        {
            $row=mysql_fetch_array($result);
            if($row['bannd']==1)    //此用户被封禁
            {
                $this->errReport($this->err_user);
                $this->err=$this->err_user;
                return false;
            }
            elseif(md5($userpass)==$row['userpass'])    //密码匹配
            {
                $this->userid=$row['id'];
                $this->userlevel=$row['userlevel'];
                return true;
            }
            else    //密码不匹配
            {
                $this->errReport($this->err_password);
                $this->err=$this->err_password;
                return false;
            }
        }
        else    //没有找到此用户
        {
            $this->errReport($this->err_username);
            $this->err=$this->err_username;
            return false;
        }
    }
    function setSession()    //置session
    {
        $sid=uniqid(’sid’);    //生成sid
        session_id($sid);
        session_start();
        $_SESSION['username']=$this->username;    //给session变量赋值
        $_SESSION['userid']=$this->userid;    //..
        $_SESSION['userlevel']=$this->userlevel;    //..
        if($this->use_cookie)    //如果使用cookie保存sid
        {
            if(!setcookie(’sid’,$sid,time()+$this->cookietime,$this->cookiepath))
                $this->errReport(”set cookie failed”);
        }
        else
            setcookie(’sid’,”,time()-3600);    //清除cookie中的sid
    }
    function userLogout()    //用户注销
    {
        session_start();
        unset($_SESSION['username']);    //清除session中的username
        if(setcookie(’sid’,”,time()-3600))
            //清除cookie中的sid
            return true;
        else
            return false;
    }
    function errReport($str)    //报错
    {
        if($this->error_report)
            echo “ERROR: $str”;
    }
}
?>

    
[3]php session函数集
    来源: 互联网  发布时间: 2013-12-24

php session函数集,如下:
session_cache_expire函数:获取或者设置当前Session的过期时间 
session_cache_limiter函数:获取或者设置当前的cache限制者 
session_commit函数:存储Session中的数据并终止Session 
session_decode函数:解密Session数据 
session_destroy函数:结束所有已经注册的Session 
session_encode函数:将当前Session会话值加密为一个字符串 
session_get_cookie_params函数:获取Session Cookie的参数 
session_id函数:获取或者设置当前的Session ID值 
session_is_registered函数:检查变量是否被注册为Session 
session_module_name函数:获取或者设置目前的Session模组 
session_name函数:获取或者设置目前的Session名称 
session_regenerate_id函数:用一个新值更新当前的Session ID 
session_register函数:注册Session为新的全局变量 
session_save_path函数:获取或者设置目前的Session保存路径 
session_set_cookie_params函数:设置Cookie的参数 
session_set_save_handler函数:设置用户级的Session存储函数 
session_start函数:初始化Session数据 
session_unregister函数:从当前Session中注销一个值 
session_unset函数:释放所有的Session变量 
session_write_close函数:向Session中写入数据并终止Session 


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3