PHP验证表单的具体实现方式

开发 后端
我们在进行PHP验证表单时,首先要进行的是需要制定长度的字母或数字组合,然后还要验证是否为指定长度的数字和指定长度的汉字等等。

学习PHP语言的新手们可能对一些具体的函数运用还是比较陌生,我们希望初学者们能够够通过本文介绍的PHP验证表单的相关知识,增加编码经验,巩固我们的知识点。

#t#PHP验证表单的具体代码如下:

  1. <?php   
  2. class class_post  
  3. {  
  4.    //验证是否为指定长度的字母/数字组合  
  5.    function fun_text1($num1,$num2,$str)  
  6.    {  
  7.     Return (preg_match("/^[a-zA-Z0-9]{".$num1.",".$num2."}$/",$str))?true:false;  
  8.    }   
  9.    //验证是否为指定长度数字  
  10.    function fun_text2($num1,$num2,$str)  
  11.    {  
  12.     return (preg_match("/^[0-9]{".$num1.",".$num2."}$/i",$str))?true:false;  
  13.    }  
  14.    //验证是否为指定长度汉字  
  15.    function fun_font($num1,$num2,$str)  
  16.    {  
  17.     // preg_match("/^[\xa0-\xff]{1,4}$/", $string);  
  18.     return (preg_match("/^([\x81-\xfe][\x40-\xfe]){".$num1.",".$num2."}$/",$str))?true:false;  
  19.    }  
  20.    //验证身份证号码  
  21.    function fun_status($str)  
  22.    {  
  23.     return (preg_match('/(^([\d]{15}|[\d]{18}|[\d]{17}x)$)/',$str))?true:false;  
  24.    }  
  25.  
  26.    //验证邮件地址  
  27.    function fun_email($str){  
  28.     return (preg_match('/^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$/',$str))?true:false;  
  29.    }  
  30.    //验证电话号码  
  31.    function fun_phone($str)  
  32.    {  
  33.  
  34.     return (preg_match("/^(((d{3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}$/",$str))?true:false;  
  35.    }  
  36.    //验证邮编  
  37.    function fun_zip($str)  
  38.    {  
  39.     return (preg_match("/^[1-9]d{5}$/",$str))?true:false;  
  40.    }  
  41.    //验证url地址  
  42.    function fun_url($str)  
  43.    {  
  44.     return (preg_match("/^http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]':+!]*([^<>""])*$/",$str))?true:false;  
  45.    }  
  46.  
  47.    // 数据入库 转义 特殊字符 传入值可为字符串 或 一维数组  
  48.    function data_join(&$data)  
  49.    {  
  50.     if(get_magic_quotes_gpc() == false)  
  51.     {  
  52.      if (is_array($data))  
  53.      {  
  54.       foreach ($data as $k => $v)  
  55.       {  
  56.        $data[$k] = addslashes($v);  
  57.       }  
  58.      }  
  59.      else  
  60.      {  
  61.       $data = addslashes($data);  
  62.      }  
  63.     }  
  64.     Return $data; return (preg_match("/^(((d{3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}$/",$str))?true:false;  
  65.    }  
  66.  
  67.    // 数据出库 还原 特殊字符 传入值可为字符串 或 一/二维数组  
  68.    function data_revert(&$data)  
  69.    {  
  70.     if (is_array($data))  
  71.     {  
  72.      foreach ($data as $k1 => $v1)  
  73.      {  
  74.       if (is_array($v1))  
  75.       {  
  76.        foreach ($v1 as $k2 => $v2)  
  77.        {  
  78.         $data[$k1][$k2] = stripslashes($v2);  
  79.        }  
  80.       }  
  81.       else  
  82.       {  
  83.        $data[$k1] = stripslashes($v1);  
  84.       }  
  85.      }  
  86.     }  
  87.     else  
  88.     {  
  89.      $data = stripslashes($data);  
  90.     }  
  91.     Return $data;  
  92.    }  
  93.  
  94.    // 数据显示 还原 数据格式 主要用于内容输出 传入值可为字符串 或 一/二维数组  
  95.    // 执行此方法前应先data_revert(),表单内容无须此还原  
  96.    function data_show(&$data)  
  97.    {  
  98.  
  99.     if (is_array($data))  
  100.     {  
  101.      foreach ($data as $k1 => $v1)  
  102.      {  
  103.       if (is_array($v1))  
  104.       {  
  105.        foreach ($v1 as $k2 => $v2)  
  106.        {  
  107.         $data[$k1][$k2]=nl2br(htmlspecialchars($data[$k1][$k2]));  
  108.         $data[$k1][$k2]=str_replace(" "," ",$data[$k1][$k2]);  
  109.         $data[$k1][$k2]=str_replace(" ","<br> ",$data[$k1][$k2]);  
  110.        }  
  111.       }  
  112.       else  
  113.       {  
  114.        $data[$k1]=nl2br(htmlspecialchars($data[$k1]));  
  115.        $data[$k1]=str_replace(" "," ",$data[$k1]);  
  116.        $data[$k1]=str_replace(" ","<br> ",$data[$k1]);  
  117.       }  
  118.      }  
  119.     }  
  120.     else  
  121.     {  
  122.      $data=nl2br(htmlspecialchars($data));  
  123.      $data=str_replace(" "," ",$data);  
  124.      $data=str_replace(" ","<br> ",$data);  
  125.     }  
  126.     Return $data;  
  127.    }  
  128. }  
  129. if (is_array($data))  
  130. {  
  131.    foreach ($data as $k1 => $v1)  
  132.    {  
  133.     if (is_array($v1))  
  134.     {  
  135.      foreach ($v1 as $k2 => $v2)  
  136.      {  
  137.       $data[$k1][$k2]=nl2br(htmlspecialchars($data[$k1][$k2]));  
  138.       $data[$k1][$k2]=str_replace(" "," ",$data[$k1][$k2]);  
  139.       $data[$k1][$k2]=str_replace(" ","<br> ",$data[$k1][$k2]);  
  140.      }  
  141.     }  
  142.     else  
  143.     {  
  144.      $data[$k1]=nl2br(htmlspecialchars($data[$k1]));  
  145.      $data[$k1]=str_replace(" "," ",$data[$k1]);  
  146.      $data[$k1]=str_replace(" ","<br> ",$data[$k1]);  
  147.     }  
  148.    }  
  149. }  
  150. else  
  151. {  
  152.    $data=nl2br(htmlspecialchars($data));  
  153.    $data=str_replace(" "," ",$data);  
  154.    $data=str_replace(" ","<br> ",$data);  
  155. }  
  156. Return $data;  
  157. }  
  158. }  
  159. ?> 

以上代码就是PHP验证表单的相关实现方法。

责任编辑:曹凯 来源: 百度空间
相关推荐

2009-11-23 18:39:17

PHP重定向

2009-11-25 15:26:03

PHP中反馈表单

2009-11-24 14:45:08

PHP批量上传图片

2009-11-23 16:59:23

PHP图形验证码

2009-11-23 16:09:50

PHP实现伪静态化页面

2009-11-25 14:31:43

PHP自然语言倒序

2009-11-24 15:23:50

PHP文件上传进度条

2010-03-04 11:36:02

Python提交表单

2009-11-25 15:50:53

PHP删除数组空白元素

2009-11-27 15:31:33

PHP类搜索定位目录树

2009-11-23 19:33:12

PHP5多态性

2009-06-05 10:17:34

struts vali验证

2009-12-01 18:02:41

PHP表单数组

2009-11-25 11:42:34

PHP判断数组为空

2009-11-27 13:14:07

PHP函数strist

2009-12-01 16:34:21

PHP表单

2009-12-02 17:22:22

PHP抓取图片

2009-12-01 09:18:50

PHP分割字符串

2009-03-31 13:12:05

ASP.NETMVC表单验证

2010-03-12 17:52:35

Python输入方式
点赞
收藏

51CTO技术栈公众号