常用到的PHP函数代码段有哪些

发布时间:2021-11-02 11:20:29 作者:小新
来源:亿速云 阅读:115

这篇文章主要介绍常用到的PHP函数代码段有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1. PHP可阅读随机字符串

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

/**************  *@length &ndash; 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 &ndash; length of random string  */ function generate_rand($l){  $c= “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789&Prime;;  srand((double)microtime()*1000000);  for($i=0; $i<$l; $i++) {  $rand.= $c[rand()%strlen($c)];  }  return $rand;  }

3. PHP编码电子邮件地址

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

function encode_email($email=&rsquo;info@domain.com&rsquo;, $linkText=&rsquo;Contact Us&rsquo;, $attrs =&rsquo;class=”emailencoder”&lsquo; )  {  // remplazar aroba y puntos  $email = str_replace(&lsquo;@&rsquo;, &lsquo;&#64;&rsquo;, $email);  $email = str_replace(&lsquo;.&rsquo;, &lsquo;&#46;&rsquo;, $email);  $email = str_split($email, 5);  $linkText = str_replace(&lsquo;@&rsquo;, &lsquo;&#64;&rsquo;, $linkText);  $linkText = str_replace(&lsquo;.&rsquo;, &lsquo;&#46;&rsquo;, $linkText);  $linkText = str_split($linkText, 5);  $part1 = &lsquo;<a href=”ma&rsquo;;  $part2 = &lsquo;ilto&#58;&rsquo;;  $part3 = &lsquo;” &lsquo;. $attrs .&rsquo; >&rsquo;;  $part4 = &lsquo;</a>&rsquo;;  $encoded = &lsquo;<script type=”text/javascript”>&rsquo;;  $encoded .= “document.write(&lsquo;$part1&prime;);”;  $encoded .= “document.write(&lsquo;$part2&prime;);”;  foreach($email as $e)  {  $encoded .= “document.write(&lsquo;$e&rsquo;);”;  }  $encoded .= “document.write(&lsquo;$part3&prime;);”;  foreach($linkText as $l)  {  $encoded .= “document.write(&lsquo;$l&rsquo;);”;  }  $encoded .= “document.write(&lsquo;$part4&prime;);”;  $encoded .= &lsquo;</script>&rsquo;;  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 &lsquo;<a target=”_blank” href=”&lsquo;.$dir.$file.&rsquo;”>&rsquo;.$file.&rsquo;</a><br>&rsquo;.”\n”;  }  }  closedir($handle);  }  }  }

6. PHP销毁目录

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

/*****  *@dir &ndash; 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 == &lsquo;.&rsquo; || $file == &lsquo;..&rsquo;)  {  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=&rsquo;{“id”:1,”name”:”foo”,”email”:”foo@foobar.com”,”interest”:["wordpress","php"]} &lsquo;;  $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=&rsquo;1.0&prime;?>  <users>  <user id=&rsquo;398&prime;>  <name>Foo</name>  <email>foo@bar.com</name>  </user>  <user id=&rsquo;867&prime;>  <name>Foobar</name>  <email>foobar@foo.com</name>  </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'], &lsquo; &lsquo;;  //subnodes are accessed by -> operator  echo $user->name, &lsquo; &lsquo;;  echo $user->email, &lsquo;<br />&rsquo;;  }

9. PHP创建日志缩略名

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

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

10. PHP获取客户端真实 IP 地址

该函数将获取用户的真实 IP 地址,即便他使用代理服务器

function getRealIpAddr()  {  if (!emptyempty($_SERVER['HTTP_CLIENT_IP']))  {  $ip=$_SERVER['HTTP_CLIENT_IP'];  }  elseif (!emptyempty($_SERVER['HTTP_X_FORWARDED_FOR']))  //to check ip is pass from proxy  {  $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];  }  else {  $ip=$_SERVER['REMOTE_ADDR'];  }  return $ip;  }

11. PHP强制性文件下载

为用户提供强制性的文件下载功能。

/********************  *@file &ndash; path to file  */ function force_download($file)  {  if ((isset($file))&&(file_exists($file))) {  header(“Content-length: “.filesize($file));  header(&lsquo;Content-Type: application/octet-stream&rsquo;);  header(&lsquo;Content-Disposition: attachment; filename=”&lsquo; . $file . &lsquo;”&lsquo;);  readfile(“$file”);  } else {  echo “No file selected”;  }  }

以上是“常用到的PHP函数代码段有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. 工作中用到的PHP函数
  2. iOS用到的宏有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:PHP命名空间怎么实现

下一篇:如何引入PHP-FPM让nginx运行PHP更轻松

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》