MENU service case
 Website construction website design Beijing website construction high-end website production company Shangpin China
We create by embracing change
360 ° brand value__
simplified Chinese character
Simplified Chinese English

Shangpin China Joins Hands with Beisheng Internet to Create a New Chapter in Website Construction

Type: Shangpin Dynamic Learn more

[Produced by Beijing website] Twenty one section of PHP lifesaving code

Source: Shangpin China | Type: website encyclopedia | Time: October 21, 2011

1. PHP can read random strings

This code will create a readable string that is closer to the words in the dictionary. It is practical and has password verification function.

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

2. PHP generates a random string

If you do not need a readable string, use this function instead to create a random string as the user's random password.

  1. /*************  
  2. *@l - length of random string  
  3. */  
  4. function  generate_rand( $l ){ 
  5.    $c "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" ;  
  6.   srand((double)microtime()*1000000);  
  7.    for ( $i =0;   $i < $l ;   $i ++) { 
  8.        $rand .=  $c [rand()% strlen ( $c )];  
  9.   } 
  10.    return   $rand ;  

3. PHP encoded email address

With this code, you can encode any e-mail address as an html character entity to prevent it from being collected by spam programs.

  1. function  encode_email( $email = ' [email protected] ' $linkText = 'Contact Us' $attrs  = 'class="emailencoder"'  ) 
  2.      // remplazar aroba y puntos  
  3.      $email  =  str_replace ( '@' '&#64;' $email );  
  4.      $email  =  str_replace ( '.' '&#46;' $email );  
  5.      $email  =  str_split ( $email , 5);    
  6.  
  7.      $linkText  =  str_replace ( '@' '&#64;' $linkText );  
  8.      $linkText  =  str_replace ( '.' '&#46;' $linkText );  
  9.      $linkText  =  str_split ( $linkText , 5);    
  10.  
  11.      $part1  =  '<a href="ma' ;  
  12.      $part2  =  'ilto&#58;' ;  
  13.      $part3  =  '" ' $attrs  . ' >' ;  
  14.      $part4  =  '</a>' ;    
  15.  
  16.      $encoded  =  '<script type="text/javascript">' ;  
  17.      $encoded  .=   "document.write('$part1');" ;  
  18.      $encoded  .=   "document.write('$part2');" ;  
  19.      foreach ( $email   as   $e
  20.     { 
  21.              $encoded  .=   "document.write('$e');" ;  
  22.     } 
  23.      $encoded  .=   "document.write('$part3');" ;  
  24.      foreach ( $linkText   as   $l
  25.     { 
  26.              $encoded  .=   "document.write('$l');" ;  
  27.     } 
  28.      $encoded  .=   "document.write('$part4');" ;  
  29.      $encoded  .=   '</script>' ;    
  30.  
  31.      return   $encoded ;  

4. PHP verifies the email address

E-mail verification is probably the most commonly used web form verification in. This code can also choose to check the MX record in the DNS of the e-mail domain in addition to verifying the e-mail address, making the e-mail verification more powerful.

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

5. PHP lists directory contents

  1. function  list_files( $dir
  2.      if ( is_dir ( $dir )) 
  3.     { 
  4.          if ( $handle  = opendir( $dir )) 
  5.         { 
  6.              while (( $file  = readdir( $handle )) !==  false) 
  7.             { 
  8.                  if ( $file  !=   "."  &&  $file  !=   ".."  &&  $file  !=   "Thumbs.db"
  9.                 { 
  10.                      echo   '<a target="_blank" href="' . $dir . $file . '">' . $file . '</a><br>' . "n" ;  
  11.                 } 
  12.             } 
  13.              closedir ( $handle );  
  14.         } 
  15.     } 

6. PHP Destroy Directory

Delete a directory, including its contents.

  1. /*****  
  2. *@dir - Directory to destroy  
  3. *@virtual[optional]- whether a virtual directory  
  4. */  
  5. function  destroyDir( $dir $virtual  = false) 
  6.      $ds  = DIRECTORY_SEPARATOR;  
  7.      $dir  =  $virtual  ?   realpath ( $dir ) :  $dir ;  
  8.      $dir  =  substr ( $dir , -1) ==  $ds  ?   substr ( $dir , 0, -1) :  $dir ;  
  9.      if  ( is_dir ( $dir ) &&  $handle  = opendir( $dir )) 
  10.     { 
  11.          while  ( $file  = readdir( $handle )) 
  12.         { 
  13.              if  ( $file  ==  '.'  ||  $file  ==  '..'
  14.             { 
  15.                  continue ;  
  16.             } 
  17.              elseif  ( is_dir ( $dir . $ds . $file )) 
  18.             { 
  19.                 destroyDir( $dir . $ds . $file );  
  20.             } 
  21.              else  
  22.             { 
  23.                 unlink( $dir . $ds . $file );  
  24.             } 
  25.         } 
  26.          closedir ( $handle );  
  27.          rmdir ( $dir );  
  28.          return  true;  
  29.     } 
  30.      else  
  31.     { 
  32.          return  false;  
  33.     } 

7. PHP parsing JSON data

Like most popular Web services, such as Twitter, which provides data through open APIs, it always knows how to parse various transmission formats of API data, including JSON, XML, and so on.

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

8. PHP parses XML data

  1. //xml string  
  2. $xml_string ="<?xml version= '1.0' ?>  
  3. <users> 
  4. <user id= '398'
  5. <name>Foo</name> 
  6. <email> [email protected] </name> 
  7. </user> 
  8. <user id= '867'
  9. <name>Foobar</name> 
  10. <email> [email protected] </name> 
  11. </user> 
  12. </users>";  
  13.  
  14. //load the xml string using simplexml  
  15. $xml  = simplexml_load_string( $xml_string );   
  16.  
  17. //loop through the each node of user  
  18. foreach  ( $xml ->user  as   $user
  19. //access attribute  
  20. echo   $user [ 'id' ],  ' ' ;  
  21. //subnodes are accessed by -> operator  
  22. echo   $user ->name,  ' ' ;  
  23. echo   $user ->email,  '<br />' ;  

9. PHP Create Log Abbreviation

Create user-friendly log abbreviations.

  1. function  create_slug( $string ){ 
  2. $slug =preg_replace( '/[^A-Za-z0-9-]+/' '-' $string );  
  3. return   $slug ;  

10. PHP obtains the real IP address of the client

This function will get the real IP address of the user, even if he uses a proxy server.

  1. function  getRealIpAddr() 
  2.      if  (!emptyempty( $_SERVER [ 'HTTP_CLIENT_IP' ])) 
  3.     { 
  4.          $ip = $_SERVER [ 'HTTP_CLIENT_IP' ];  
  5.     } 
  6.      elseif  (!emptyempty( $_SERVER [ 'HTTP_X_FORWARDED_FOR' ])) 
  7.      //to check ip is pass from proxy  
  8.     { 
  9.          $ip = $_SERVER [ 'HTTP_X_FORWARDED_FOR' ];  
  10.     } 
  11.      else  
  12.     { 
  13.          $ip = $_SERVER [ 'REMOTE_ADDR' ];  
  14.     } 
  15.      return   $ip ;  

11. PHP mandatory file download

Provide users with mandatory file download function.

  1. /********************  
  2. *@file - path to file  
  3. */  
  4. function  force_download( $file
  5. if  ((isset( $file ))&&( file_exists ( $file ))) { 
  6. header( "Content-length: " . filesize ( $file ));  
  7. header( 'Content-Type: application/octet-stream' );  
  8. header( 'Content-Disposition: attachment;  filename="'  .   $file  .   '"' );  
  9. readfile( "$file" );  
  10. else  { 
  11. echo   "No file selected" ;  

12. PHP creates tag cloud

  1. function  getCloud(  $data  =  array (),  $minFontSize  = 12,  $maxFontSize  = 30 ) 
  2. $minimumCount  = min(  array_values $data  ) );  
  3. $maximumCount  = max(  array_values $data  ) );  
  4. $spread  =  $maximumCount  -  $minimumCount ;  
  5. $cloudHTML  =  '' ;  
  6. $cloudTags  =  array ();   
  7.  
  8. $spread  == 0 &&  $spread  = 1;   
  9.  
  10. foreach $data   as   $tag  =>  $count  ) 
  11. $size  =  $minFontSize  + (  $count  -  $minimumCount  ) 
  12. * (  $maxFontSize  -  $minFontSize  ) /  $spread ;  
  13. $cloudTags [] =  '<a style="font-size: '  .   floor $size  ) .   'px'  
  14. '" href="#" title="''  .   $tag  .  
  15. '' returned a count of '  .   $count  .   '">'  
  16. . htmlspecialchars(  stripslashes $tag  ) ) .   '</a>' ;  
  17. }  
  18.  
  19. return  join(  "n" $cloudTags  ) .   "n" ;  
  20. /**************************  
  21. **** Sample usage ***/  
  22. $arr  = Array( 'Actionscript'  => 35,  'Adobe'  => 22,  'Array'  => 44,  'Background'  => 43, 
  23. 'Blur'  => 18,  'Canvas'  => 33,  'Class'  => 15,  'Color Palette'  => 11,  'Crop'  => 42, 
  24. 'Delimiter'  => 13,  'Depth'  => 34,  'Design'  => 8,  'Encode'  => 12,  'Encryption'  => 30, 
  25. 'Extract'  => 28,  'Filters'  => 42);  
  26. echo  getCloud( $arr , 12, 36);  

13. PHP searches for the similarity of two strings

PHP provides a rarely used similar_text function, but this function is very useful for comparing two strings and returning the percentage of similarity.

  1. similar_text( $string1 $string2 $percent );  
  2. //$percent will have the percentage of similarity  

14. PHP uses Gravatar general avatar in applications

As WordPress becomes more and more popular, Gravatar is also popular. Because Gravatar provides an easy-to-use API, it is also very convenient to incorporate it into applications.

  1. /******************  
  2. *@email - Email address to show gravatar for  
  3. *@size - size of gravatar  
  4. *@default - URL of default gravatar to use  
  5. *@rating - rating of Gravatar(G, PG, R, X)  
  6. */  
  7. function  show_gravatar( $email $size $default $rating
  8. echo   '<img src=" //www.gravatar.com/avatar.php?gravatar_id= ' .md5( $email ).  
  9. '&default=' . $default . '&size=' . $size . '&rating=' . $rating . '" width="' . $size .'px" 
  10. height= "'.$size.'px"  />';  

15. PHP truncates text at character breakpoints

The so-called word break is the place where a word can be broken when changing lines. This function truncates the string at hyphenation.

  1. // Original PHP code by Chirp Internet: www.chirp.com.au  
  2. // Please acknowledge use of this code by including this header.  
  3. function  myTruncate( $string $limit $break = "." $pad = "..." ) { 
  4. // return with no change if string is shorter than $limit  
  5. if ( strlen ( $string ) <=  $limit
  6. return   $string ;   
  7.  
  8. // is $break present between $limit and the end of the string?  
  9. if (false !== ( $breakpoint  =  strpos ( $string $break $limit ))) { 
  10. if ( $breakpoint  <  strlen ( $string ) - 1) { 
  11. $string  =  substr ( $string , 0,  $breakpoint ) .   $pad ;  
  12. return   $string ;  
  13. /***** Example ****/  
  14. $short_string =myTruncate( $long_string , 100,  ' ' );  

16. Zip compression of PHP files

  1. /* creates a compressed zip file */  
  2. function  create_zip( $files  =  array (), $destination  =  '' , $overwrite  = false) { 
  3. //if the zip file already exists and overwrite is false, return false  
  4. if ( file_exists ( $destination ) && ! $overwrite ) {  return  false;  } 
  5. //vars  
  6. $valid_files  =  array ();  
  7. //if files were passed in...  
  8. if ( is_array ( $files )) { 
  9. //cycle through each file  
  10. foreach ( $files   as   $file ) { 
  11. //make sure the file exists  
  12. if ( file_exists ( $file )) { 
  13. $valid_files [] =  $file ;  
  14. //if we have good files...  
  15. if ( count ( $valid_files )) { 
  16. //create the archive  
  17. $zip  =  new  ZipArchive();  
  18. if ( $zip ->open( $destination , $overwrite  ?  ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !==  true) { 
  19. return  false;  
  20. //add the files  
  21. foreach ( $valid_files   as   $file ) { 
  22. $zip ->addFile( $file , $file );  
  23. //debug  
  24. //echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status;    
  25.  
  26. //close the zip -- done!  
  27. $zip ->close();   
  28.  
  29. //check to make sure the file exists  
  30. return   file_exists ( $destination );  
  31. else  
  32. return  false;  
  33. /***** Example Usage ***/  
  34. $files = array ( 'file1.jpg' 'file2.jpg' 'file3.gif' );  
  35. create_zip( $files 'myzipfile.zip' , true);  

17. PHP decompress Zip file

  1. /**********************  
  2. *@file - path to zip file  
  3. *@destination - destination directory for unzipped files  
  4. */  
  5. function  unzip_file( $file $destination ){ 
  6. // create object  
  7. $zip  =  new  ZipArchive() ;  
  8. // open archive  
  9. if  ( $zip ->open( $file ) !==  TRUE) { 
  10. die  (’Could not open archive’);  
  11. // extract contents to destination directory  
  12. $zip ->extractTo( $destination );  
  13. // close archive  
  14. $zip ->close();  
  15. echo   'Archive extracted to directory' ;  

18. PHP presets http strings for URL addresses

Sometimes you need to accept the URL input in some forms, but users rarely add the //field. This code will add this field to the URL.

  1. if  (!preg_match( "/^(http|ftp):/" $_POST [ 'url' ])) { 
  2.     $_POST [ 'url' ] =  '//' . $_POST [ 'url' ];  

19. PHP converts URL strings into hyperlinks

This function converts URL and E-mail address strings into clickable hyperlinks.

  1. function  makeClickableLinks( $text ) { 
  2. $text  =  eregi_replace ( '(((f|ht) {1}tp ://)[-a-zA-Z0-9@:%_+.~#?&//=]+)'
  3. '<a href="1">1</a>' $text );  
  4. $text  =  eregi_replace ( '([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)'
  5. '1<a href="//2">2</a>' $text );  
  6. $text  =  eregi_replace ( '([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})'
  7. '<a href="mailto:1">1</a>' $text );   
  8.  
  9. return   $text ;  

20. PHP Resize Image

Creating image thumbnails takes a lot of time, and this code will help you understand the logic of thumbnails.

  1. /**********************  
  2. *@filename - path to the image  
  3. *@tmpname - temporary path to thumbnail  
  4. *@xmax - max width  
  5. *@ymax - max height  
  6. */  
  7. function  resize_image( $filename $tmpname $xmax $ymax
  8.      $ext  =  explode ( "." $filename );  
  9.      $ext  =  $ext [ count ( $ext )-1];    
  10.  
  11.      if ( $ext  ==  "jpg"  ||  $ext  ==  "jpeg"
  12.          $im  = imagecreatefromjpeg( $tmpname );  
  13.      elseif ( $ext  ==  "png"
  14.          $im  = imagecreatefrompng( $tmpname );  
  15.      elseif ( $ext  ==  "gif"
  16.          $im  = imagecreatefromgif( $tmpname );    
  17.  
  18.      $x  = imagesx( $im );  
  19.      $y  = imagesy( $im );    
  20.  
  21.      if ( $x  <=  $xmax  &&  $y  <=  $ymax
  22.          return   $im ;    
  23.  
  24.      if ( $x  >=  $y ) { 
  25.          $newx  =  $xmax ;  
  26.          $newy  =  $newx  *  $y  /  $x ;  
  27.     } 
  28.      else  { 
  29.          $newy  =  $ymax ;  
  30.          $newx  =  $x  /  $y  *  $newy ;  
  31.     }   
  32.  
  33.      $im2  = imagecreatetruecolor( $newx $newy );  
  34.     imagecopyresized( $im2 $im , 0, 0, 0, 0,  floor ( $newx ),  floor ( $newy ),  $x $y );  
  35.      return   $im2 ;  

21. PHP detects ajax requests

Most JavaScript frameworks, such as jquery and Mootools, will send additional HTTP_X_REQUESTED_WITH header information when sending Ajax requests. The header is an Ajax request, so you can detect Ajax requests on the server side.

  1. if (!emptyempty( $_SERVER [ 'HTTP_X_REQUESTED_WITH' ]) &&  strtolower ( $_SERVER [ 'HTTP_X_REQUESTED_WITH' ]) ==  'xmlhttprequest' ){ 
  2.      //If AJAX Request Then  
  3. } else
    Source Statement: This article is original or edited by Shangpin China's editors. If it needs to be reproduced, please indicate that it is from Shangpin China. The above contents (including pictures and words) are from the Internet. If there is any infringement, please contact us in time (010-60259772).
    TAG label:

What if your website can increase the number of conversions and improve customer satisfaction?

Make an appointment with a professional consultant to communicate!

* Shangpin professional consultant will contact you as soon as possible

Disclaimer

Thank you very much for visiting our website. Please read all the terms of this statement carefully before you use this website.

1. Part of the content of this site comes from the network, and the copyright of some articles and pictures involved belongs to the original author. The reprint of this site is for everyone to learn and exchange, and should not be used for any commercial activities.

2. This website does not assume any form of loss or injury caused by users to themselves and others due to the use of these resources.

3. For issues not covered in this statement, please refer to relevant national laws and regulations. In case of conflict between this statement and national laws and regulations, the national laws and regulations shall prevail.

4. If it infringes your legitimate rights and interests, please contact us in time, and we will delete the relevant content at the first time!

Contact: 010-60259772
E-mail: [email protected]

  • Telephone consultation

    National Service Hotline 400-700-4979

  • Online consultation

  • WeChat consultation

     WeChat consultation

Communicate with professional consultants now!

  • National Service Hotline

    400-700-4979

  • Beijing Service Hotline

    010-60259772

Please be assured to fill in the information protection
Online consultation

Disclaimer

Thank you very much for visiting our website. Please read all the terms of this statement carefully before you use this website.

1. Part of the content of this site comes from the network, and the copyright of some articles and pictures involved belongs to the original author. The reprint of this site is for everyone to learn and exchange, and should not be used for any commercial activities.

2. This website does not assume any form of loss or injury caused by users to themselves and others due to the use of these resources.

3. For issues not covered in this statement, please refer to relevant national laws and regulations. In case of conflict between this statement and national laws and regulations, the national laws and regulations shall prevail.

4. If it infringes your legitimate rights and interests, please contact us in time, and we will delete the relevant content at the first time!

Contact: 010-60259772
E-mail: [email protected]