PHP中一些常用操作类代码解析

互联网 20-6-10

PHP中一些常用操作类代码示例一

1. PHP可阅读随机字符串

此代码将创建一个可阅读的字符串,使其更接近词典中的单词,实用且具

/**@length - length of random string (must be a multiple of 2)**/   function readable_random_string($length = 6){       $conso=array("b","c","d","f","g","h","j","k","l","m","n","p","r","s","t","v","w","x","y","z");       $vocal=array("a","e","i","o","u");       $password="";       srand ((double)microtime()*1000000);       $max = $length/2;       for($i=1;$i<=$max; $i++){           $password.=$conso[rand(0,19)];           $password.=$vocal[rand(0,4)];       }       return $password;   }

 有密码验证功能。

2. PHP生成一个随机字符串

如果不需要可阅读的字符串,使用此函数替代,即可创建一个随机字符串,作为用户的随机密码等。

/************* *@l - length of random string */  function generate_rand($l){      $c= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";      srand((double)microtime()*1000000);      for($i=0; $i<$l; $i++) {          $rand.=      $c[rand()%strlen($c)];      }     return $rand;  }

3. PHP编码电子邮件地址

使用此代码,可以将任何电子邮件地址编码为 html 字符实体,以防止被垃圾邮件程序收集。

function encode_email($email='info@domain.com', $linkText='Contact Us',$attrs ='class="emailencoder"' ) {      // remplazar aroba y puntos $email =  str_replace('@', '@', $email);      $email = str_replace('.', '.', $email);      $email =  str_split($email, 5);      $linkText = str_replace('@', '@', $linkText);      $linkText =  str_replace('.', '.', $linkText);      $linkText = str_split($linkText, 5);      $part1 = 'part2 = 'ilto:';      $part3 = '" '. $attrs .' >';      $part4 = ''; $encoded = '';  $encoded .= "document.write('$part1');";      $encoded .= "document.write('$part2');";      foreach($email as $e) {          $encoded .= "document.write('$e');";      }      $encoded .= "document.write('$part3');";  foreach($linkText as $l) {          $encoded .= "document.write('$l');";      }      $encoded .= "document.write('$part4');";      $encoded .= '';      return $encoded; }

4. PHP验证邮件地址

电子邮件验证也许是中最常用的网页表单验证,此代码除了验证电子邮件地址,也可以选择检查邮件域所属 DNS 中的 MX 记录,使邮件验证功能更加强大。

function is_valid_email($email, $test_mx = false) {  if(eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email))      if($test_mx) {          list($username, $domain) = split("@", $email);          return getmxrr($domain, $mxrecords);      } else {         return true;      }       }  else {     return false;  }

5. PHP列出目录内容  

function list_files($dir){      if(is_dir($dir)) {          if($handle = opendir($dir)) {              while(($file = readdir($handle)) !== false) {                  if($file != "." && $file != ".." && $file != "Thumbs.db") {                      echo ''.$file.'a>  '."\n";                   }              } closedir($handle);          }     }  }

6. PHP销毁目录

删除一个目录,包括它的内容。

/***** *@dir - Directory to destroy *@virtual[optional]- whether a virtual directory */  function destroyDir($dir, $virtual = false) {      $ds = DIRECTORY_SEPARATOR;      $dir = $virtual ? realpath($dir) : $dir;      $dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir;      if (is_dir($dir) && $handle = opendir($dir)) {          while ($file = readdir($handle)) {              if ($file == '.' || $file == '..') {                  continue;              } elseif (is_dir($dir.$ds.$file)) {                  destroyDir($dir.$ds.$file);              } else {                  unlink($dir.$ds.$file);              }          }          closedir($handle);          rmdir($dir);          return true;      } else {          return false;      }  }

7. PHP解析 JSON 数据

与大多数流行的 Web 服务如 twitter 通过开放 API 来提供数据一样,它总是能够知道如何解析 API 数据的各种传送格式,包括 JSON,XML 等等。

$json_string='{"id":1,"name":"foo","email":"foo@foobar.com","interest":["wordpress","php"]} ';  $obj=json_decode($json_string);  echo $obj->name; //prints foo echo  $obj->interest[1]; //prints php

8. PHP解析 XML 数据

//xml string $xml_string="xml version='1.0'?> Fooname> foo@bar.comname> user> Foobarname> foobar@foo.comname> user>users>";    //load the xml string using simplexml  $xml = simplexml_load_string($xml_string);    //loop through the each node of user  foreach ($xml->user as $user) {      //access attribute      echo $user['id'], ' ';            //subnodes are accessed by -> operator      echo $user->name, ' ';      echo $user->email,'';  }

9. PHP创建日志缩略名

创建用户友好的日志缩略名。

function create_slug($string){      $slug=preg_replace('/[^A-Za-z0-9-]+/', '-', $string);     return $slug;  }

推荐教程:《PHP视频教程》

以上就是PHP中一些常用操作类代码解析的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: 操作类代码
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:基于php生成xml的实例解析

相关资讯