知识大全 20个实用PHP实例代码

Posted 函数

篇首语:努力尽今夕,少年犹可夸。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 20个实用PHP实例代码相关的知识,希望对你有一定的参考价值。

20个实用PHP实例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  

    PHP可阅读随机字符串 此代码将创建一个可阅读的字符串 使其更接近词典中的单词 实用且具有密码验证功能 /************** *@length   length of random string (must be a multiple of  ) **************/ function readable_random_string($length =  )     $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()* );     $max = $length/ ;     for($i= ; $i<=$max; $i++)          $password =$conso[rand( )];     $password =$vocal[rand( )];          return $password;    PHP生成一个随机字符串 如果不需要可阅读的字符串 使用此函数替代 即可创建一个随机字符串 作为用户的随机密码等 /************* *@l   length of random string */ function generate_rand($l)   $c= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ";   srand((double)microtime()* );   for($i= ; $i<$l; $i++)        $rand = $c[rand()%strlen($c)];      return $rand;    PHP编码电子邮件地址 使用此代码 可以将任何电子邮件地址编码为  字符实体 以防止被垃圾邮件程序收集 function encode_email($email=’info@domain ’  $linkText=’Contact Us’  $attrs =’’ )     // remplazar aroba y puntos     $email = str_replace(’@’  ’&# ;’  $email);     $email = str_replace(’ ’  ’&# ;’  $email);     $email = str_split($email   );       $linkText = str_replace(’@’  ’&# ;’  $linkText);     $linkText = str_replace(’ ’  ’&# ;’  $linkText);     $linkText = str_split($linkText   );       $part  = ’<a href="ma’;     $part  = ’ilto&# ;’;     $part  = ’" ’  $attrs  ’ >’;     $part  = ’</a>’;       $encoded = ’<script type="text/javascript">’;     $encoded  = "document write(’$part ’);";     $encoded  = "document write(’$part ’);";     foreach($email as $e)                  $encoded  = "document write(’$e’);";          $encoded  = "document write(’$part ’);";     foreach($linkText as $l)                  $encoded  = "document write(’$l’);";          $encoded  = "document write(’$part ’);";     $encoded  = ’</script>’;       return $encoded;    PHP验证邮件地址 电子邮件验证也许是中最常用的网页表单验证 此代码除了验证电子邮件地址 也可以选择检查邮件域所属 DNS 中的 MX 记录 使邮件验证功能更加强大 function is_valid_email($email  $test_mx = false)     if(eregi("^([_a z ]+)( [_a z ]+)*@([a z ]+)( [a z ]+)*( [a z] )$"  $email))         if($test_mx)                      list($username  $domain) = split("@"  $email);             return getmxrr($domain  $mxrecords);                  else             return true;     else         return false;    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 ’<a target="_blank" href="’ $dir $file ’">’ $file ’</a><br>’ "n";                                           closedir($handle);                  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   ) == $ds ? substr($dir     ) : $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;         PHP解析 JSON 数据 与大多数流行的 Web 服务如 itter 通过开放 API 来提供数据一样 它总是能够知道如何解析 API 数据的各种传送格式 包括 JSON XML 等等 $json_string=’"id": "name":"foo" "email":"foo@foobar " "interest":["wordpress" "php"] ’; $obj=json_decode($json_string); echo $obj >name; //prints foo echo $obj >interest[ ]; //prints php    PHP解析 XML 数据  //xml string $xml_string="<?xml version=’ ’?> <users> <user id=’ ’> <name>Foo</name> <email>foo@bar </name> </user> <user id=’ ’> <name>Foobar</name> <email>foobar@foo </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’]  ’ ’; //subnodes are accessed by  > operator echo $user >name  ’ ’; echo $user >email  ’<br />’;     PHP创建日志缩略名 创建用户友好的日志缩略名   function create_slug($string) $slug=preg_replace(’/[^A Za z ]+/’  ’ ’  $string); return $slug;     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;     PHP强制性文件下载 为用户提供强制性的文件下载功能   /******************** *@file   path to file */ function force_download($file) if ((isset($file))&&(file_exists($file)))  header("Content length: " filesize($file)); header(’Content Type: application/octet stream’); header(’Content Disposition: attachment; filename="’   $file   ’"’); readfile("$file");  else  echo "No file selected";  

    PHP创建标签云  function getCloud( $data = array()  $minFontSize =   $maxFontSize =   ) $minimumCount = min( array_values( $data ) ); $maximumCount = max( array_values( $data ) ); $spread = $maximumCount   $minimumCount; $cloudHTML = ’’; $cloudTags = array();  $spread ==   && $spread =  ;  foreach( $data as $tag => $count ) $size = $minFontSize + ( $count   $minimumCount ) * ( $maxFontSize   $minFontSize ) / $spread; $cloudTags[] = ’<a  href="#" title="’’   $tag  ’’ returned a count of ’   $count   ’">’  specialchars( stripslashes( $tag ) )   ’</a>’;   return join( "n"  $cloudTags )   "n"; /************************** **** Sample usage ***/ $arr = Array(’Actionscript’ =>   ’Adobe’ =>   ’Array’ =>   ’Background’ =>  ’Blur’ =>   ’Canvas’ =>   ’Class’ =>   ’Color Palette’ =>   ’Crop’ =>  ’Delimiter’ =>   ’Depth’ =>   ’Design’ =>   ’Encode’ =>   ’Encryption’ =>  ’Extract’ =>   ’Filters’ =>  ); echo getCloud($arr     );    PHP寻找两个字符串的相似性 PHP 提供了一个极少使用的 similar_text 函数 但此函数非常有用 用于比较两个字符串并返回相似程度的百分比   similar_text($string  $string  $percent); //$percent will have the percentage of similarity    PHP在应用程序中使用 Gravatar 通用头像 随着 WordPress 越来越普及 Gravatar 也随之流行 由于 Gravatar 提供了易于使用的 API 将其纳入应用程序也变得十分方便   /****************** *@email   Email address to show gravatar for *@size   size of gravatar *@default   URL of default gravatar to use *@rating   rating of Gravatar(G  PG  R  X) */ function show_gravatar($email  $size  $default  $rating) echo ’<img src="($email) ’&default=’ $default ’&size=’ $size ’&rating=’ $rating ’"  height=’ $size ’px />’;     PHP在字符断点处截断文字 所谓断字 (word break) 即一个单词可在转行时断开的地方 这一函数将在断字处截断字符串   // Original PHP code by Chirp Internet:  chirp au // Please acknowledge use of this code by including this header function myTruncate($string  $limit  $break=" "  $pad=" ")  // return with no change if string is shorter than $limit if(strlen($string) <= $limit) return $string;  // is $break present beeen $limit and the end of the string? if(false !== ($breakpoint = strpos($string  $break  $limit)))  if($breakpoint < strlen($string)    )  $string = substr($string    $breakpoint)   $pad; return $string; /***** Example ****/ $short_string=myTruncate($long_string    ’ ’);    PHP文件 Zip 压缩  /* creates a pressed zip file */ function create_zip($files = array() $destination = ’’ $overwrite = false)  //if the zip file already exists and overwrite is false  return false if(file_exists($destination) && !$overwrite)  return false;  //vars $valid_files = array(); //if files were passed in if(is_array($files))  //cycle through each file foreach($files as $file)  //make sure the file exists if(file_exists($file))  $valid_files[] = $file; //if we have good files if(count($valid_files))  //create the archive $zip = new ZipArchive(); if($zip >open($destination $overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true)  return false; //add the files foreach($valid_files as $file)  $zip >addFile($file $file); //debug //echo ’The zip archive contains ’ $zip >numFiles ’ files with a status of ’ $zip >status;  //close the zip   done! $zip >close();  //check to make sure the file exists return file_exists($destination); else return false; /***** Example Usage ***/ $files=array(’file jpg’  ’file jpg’  ’file gif’); create_zip($files  ’myzipfile zip’  true);    PHP解压缩 Zip 文件  /********************** *@file   path to zip file *@destination   destination directory for unzipped files */ function unzip_file($file  $destination) // create object $zip = new ZipArchive() ; // open archive if ($zip >open($file) !== TRUE)  die (’Could not open archive’); // extract contents to destination directory $zip >extractTo($destination); // close archive $zip >close(); echo ’Archive extracted to directory’;     PHP为 URL 地址预设  字符串 有时需要接受一些表单中的网址输入 但用户很少添加 // 字段 此代码将为网址添加该字段   if (!preg_match("/^(|ftp):/"  $_POST[’url’]))     $_POST[’url’] = ’//’ $_POST[’url’];     PHP将网址字符串转换成超级链接 该函数将 URL 和 E mail 地址字符串转换为可点击的超级链接   function makeClickableLinks($text)  $text = eregi_replace(’(((f|ht) tp://)[ a zA Z @:%_+ ~#?&//=]+)’  ’<a href=" "> </a>’  $text); $text = eregi_replace(’([[:space:]()[])( [ a zA Z @:%_+ ~#?&//=]+)’  ’ <a href="// "> </a>’  $text); $text = eregi_replace(’([_ a z ]+@([ a z][ a z ]+ )+[a z] )’  ’<a href="mailto: "> </a>’  $text);  return $text;    PHP调整图像尺寸 创建图像缩略图需要许多时间 此代码将有助于了解缩略图的逻辑   /********************** *@filename   path to the image *@tmpname   temporary path to thumbnail *@xmax   max width *@ymax   max height */ function resize_image($filename  $tmpname  $xmax  $ymax)     $ext = explode(" "  $filename);     $ext = $ext[count($ext) ];       if($ext == "jpg" || $ext == "jpeg")         $im = imagecreatefromjpeg($tmpname);     elseif($ext == "png")         $im = imagecreatefrompng($tmpname);     elseif($ext == "gif")         $im = imagecreatefromgif($tmpname);       $x = imagesx($im);     $y = imagesy($im);       if($x <= $xmax && $y <= $ymax)         return $im;       if($x >= $y)          $newx = $xmax;         $newy = $newx * $y / $x;          else          $newy = $ymax;         $newx = $x / $y * $newy;            $im  = imagecreatetruecolor($newx  $newy);     imagecopyresized($im  $im          floor($newx)  floor($newy)  $x  $y);     return $im ;     PHP检测 ajax 请求 大多数的 JavaScript 框架如 jquery Mootools 等 在发出 Ajax 请求时 都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息 头当他们一个ajax请求 因此你可以在服务器端侦测到 Ajax 请求   if(!emptyempty($_SERVER[’HTTP_X_REQUESTED_WITH’]) && strtolower($_SERVER[’HTTP_X_REQUESTED_WITH’]) == ’xmlrequest’)     //If AJAX Request Then else //something else  

cha138/Article/program/PHP/201311/21274

相关参考

知识大全 PHP采集代码实例

PHP采集代码实例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138/Artic

知识大全 界定PHP代码实例描述

PHPWeb开发学习实录:界定PHP代码实例描述  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 界定PHP代码实例应用

PHPWeb开发学习实录:界定PHP代码实例应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 界定PHP代码实例分析

PHPWeb开发学习实录:界定PHP代码实例分析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 一个典型的PHP分页实例代码

一个典型的PHP分页实例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138/

知识大全 用PHP读取超大文件的实例代码

用PHP读取超大文件的实例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138

知识大全 php指定网址跳转代码实例

cha138/Article/program/PHP/201311/21277

知识大全 php ajax无刷新上传图片实例代码

  将index和uploadphp文件保存到支持php的空间的同级目录测试运行即可  AJAX客户端页面代码index  <><body><h>Ajaxfileu

知识大全 php ci框架验证码实例分析

  php代码复制代码代码如下:<?phpclassCaptcha_codevar$width=;var$num=;var$height=;var$name=randcode;publicfun

知识大全 php技巧:几个比较实用的PHP函数

php技巧:几个比较实用的PHP函数  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  sys_ge