46 useful PHP code snippets (1)

Source: Internet
Author: User
Tags ziparchive ssl certificate
It's always good to have a magic tool when writing code! The following is a collection of 40 + php code snippets to help you develop PHP projects. It's always good to have a magic tool when writing code! The following is a collection of 40 + php code snippets to help you develop PHP projects.

These PHP snippets are also very helpful for beginners of PHP and are very easy to learn. let's start learning ~

1. Send SMS

When developing a Web or mobile application, you may need to send SMS messages to users, or send messages due to logon reasons. The following PHP code implements the SMS sending function.

To send SMS messages in any language, an SMS gateway is required. Most SMS provides an API, where MSG91 is used as the SMS gateway.

[Code] php code:

function send_sms($mobile,$msg){$authKey = "XXXXXXXXXXX";date_default_timezone_set("Asia/Kolkata");$date = strftime("%Y-%m-%d %H:%M:%S");//Multiple mobiles numbers separated by comma$mobileNumber = $mobile;  //Sender ID,While using route4 sender id should be 6 characters long.$senderId = "IKOONK";  //Your message to send, Add URL encoding here.$message = urlencode($msg);  //Define route $route = "template";//Prepare you post parameters$postData = array(    'authkey' => $authKey,    'mobiles' => $mobileNumber,    'message' => $message,    'sender' => $senderId,    'route' => $route);  //API URL$url="https://control.msg91.com/sendhttp.php";  // init the resource$ch = curl_init();curl_setopt_array($ch, array(    CURLOPT_URL => $url,    CURLOPT_RETURNTRANSFER => true,    CURLOPT_POST => true,    CURLOPT_POSTFIELDS => $postData    //,CURLOPT_FOLLOWLOCATION => true));    //Ignore SSL certificate verificationcurl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);    //get response$output = curl_exec($ch);//Print error if anyif(curl_errno($ch)){    echo 'error:' . curl_error($ch);}  curl_close($ch);}

"$ AuthKey =" XXXXXXXXXXX ";" You need to enter your password, "$ senderId =" IKOONK ";" You need to enter your SenderID. When entering a mobile number, you need to specify the country code (for example, the United States is 1, and India is 91 ).

Syntax:

$ Message = "Hello World ";

$ Mobile = "918112998787 ";

Send_sms ($ mobile, $ message );

?>

2. use mandrill to send emails

Mandrill is a powerful SMTP provider. Developers tend to use a third-party SMTP provider for better delivery.

In the following function, you need to put "Mandrill. php" in the same folder as a PHP file so that you can use TA to send emails.

[Code] php code:

function send_email($to_email,$subject,$message1){require_once 'Mandrill.php';$apikey = 'XXXXXXXXXX'; //specify your api key here$mandrill = new Mandrill($apikey);  $message = new stdClass();$message->html = $message1;$message->text = $message1;$message->subject = $subject;$message->from_email = "blog@koonk.com";//Sender Email$message->from_name  = "KOONK";//Sender Name$message->to = array(array("email" => $to_email));$message->track_opens = true;  $response = $mandrill->messages->send($message);}

$ Apikey = 'xxxxxxxxxx'; // specify your api key here ". here you need to specify your API key (obtained from the Mandrill account ).

Syntax:

$ To = "abc@example.com ";

$ Subject = "This is a test email ";

$ Message = "Hello World! ";

Send_email ($ to, $ subject, $ message );

?>

To achieve the best results, it is best to configure DNS according to the Mandrill tutorial.

3. PHP function: blocking SQL injection

SQL injection or SQLi common means of attacking websites. the following code can help you prevent these tools.

[Code] php code:

function clean($input){    if (is_array($input))    {        foreach ($input as $key => $val)         {            $output[$key] = clean($val);            // $output[$key] = $this->clean($val);        }    }    else    {        $output = (string) $input;        // if magic quotes is on then use strip slashes        if (get_magic_quotes_gpc())         {            $output = stripslashes($output);        }        // $output = strip_tags($output);        $output = htmlentities($output, ENT_QUOTES, 'UTF-8');    }// return the clean text    return $output;}

Syntax:

$ Text = "script" alert (1) script ";

$ Text = clean ($ text );

Echo $ text;

?>

4. detect user locations

Use the following function to check the city in which the user accesses your website.

[Code] php code:

function detect_city($ip) {                 $default = 'UNKNOWN';          $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';                 $url = 'http://ipinfodb.com/ip_locator.php?ip=' . urlencode($ip);        $ch = curl_init();                 $curl_opt = array(            CURLOPT_FOLLOWLOCATION  => 1,            CURLOPT_HEADER      => 0,            CURLOPT_RETURNTRANSFER  => 1,            CURLOPT_USERAGENT   => $curlopt_useragent,            CURLOPT_URL       => $url,            CURLOPT_TIMEOUT         => 1,            CURLOPT_REFERER         => 'http://' . $_SERVER['HTTP_HOST'],        );                 curl_setopt_array($ch, $curl_opt);                 $content = curl_exec($ch);                 if (!is_null($curl_info)) {            $curl_info = curl_getinfo($ch);        }                 curl_close($ch);                 if ( preg_match('{
  • City : ([^<]*)
  • }i', $content, $regs) ) { $city = $regs[1]; } if ( preg_match('{
  • State/Province : ([^<]*)
  • }i', $content, $regs) ) { $state = $regs[1]; } if( $city!='' && $state!='' ){ $location = $city . ', ' . $state; return $location; }else{ return $default; } }

    Syntax:

    $ Ip = $ _ SERVER ['remote _ ADDR '];

    $ City = detect_city ($ ip );

    Echo $ city;

    ?>

    5. obtain the source code of the Web page

    Use the following function to obtain the HTML code of any Web page.

    [Code] php code:

    function display_sourcecode($url){$lines = file($url);$output = "";foreach ($lines as $line_num => $line) {     // loop thru each line and prepend line numbers    $output.= "Line #{$line_num} : " . htmlspecialchars($line) . "
    \n";}}

    Syntax:

    $ Url = "http://blog.koonk.com ";

    $ Source = display_sourcecode ($ url );

    Echo $ source;

    ?>

    6. calculate your Facebook page users

    [Code] php code:

    function fb_fan_count($facebook_name){    $data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name));    $likes = $data->likes;    return $likes;}

    Syntax:

    $ Page = "koonktechnologies ";

    $ Count = fb_fan_count ($ page );

    Echo $ count;

    ?>

    7. determine the dominant color of any image

    [Code] php code:

    function dominant_color($image){$i = imagecreatefromjpeg($image);for ($x=0;$x
     
      > 16) & 0xFF;        $g   = ($rgb >>  & 0xFF;        $b   = $rgb & 0xFF;        $rTotal += $r;        $gTotal += $g;        $bTotal += $b;        $total++;    }}$rAverage = round($rTotal/$total);$gAverage = round($gTotal/$total);$bAverage = round($bTotal/$total);}
     

    8. whois query

    Use the following function to obtain the complete details of any domain name user.

    [Code] php code:

    function whois_query($domain) {      // fix the domain name:    $domain = strtolower(trim($domain));    $domain = preg_replace('/^http:\/\//i', '', $domain);    $domain = preg_replace('/^www\./i', '', $domain);    $domain = explode('/', $domain);    $domain = trim($domain[0]);      // split the TLD from domain name    $_domain = explode('.', $domain);    $lst = count($_domain)-1;    $ext = $_domain[$lst];      // You find resources and lists     // like these on wikipedia:     //    // http://de.wikipedia.org/wiki/Whois    //    $servers = array(        "biz" => "whois.neulevel.biz",        "com" => "whois.internic.net",        "us" => "whois.nic.us",        "coop" => "whois.nic.coop",        "info" => "whois.nic.info",        "name" => "whois.nic.name",        "net" => "whois.internic.net",        "gov" => "whois.nic.gov",        "edu" => "whois.internic.net",        "mil" => "rs.internic.net",        "int" => "whois.iana.org",        "ac" => "whois.nic.ac",        "ae" => "whois.uaenic.ae",        "at" => "whois.ripe.net",        "au" => "whois.aunic.net",        "be" => "whois.dns.be",        "bg" => "whois.ripe.net",        "br" => "whois.registro.br",        "bz" => "whois.belizenic.bz",        "ca" => "whois.cira.ca",        "cc" => "whois.nic.cc",        "ch" => "whois.nic.ch",        "cl" => "whois.nic.cl",        "cn" => "whois.cnnic.net.cn",        "cz" => "whois.nic.cz",        "de" => "whois.nic.de",        "fr" => "whois.nic.fr",        "hu" => "whois.nic.hu",        "ie" => "whois.domainregistry.ie",        "il" => "whois.isoc.org.il",        "in" => "whois.ncst.ernet.in",        "ir" => "whois.nic.ir",        "mc" => "whois.ripe.net",        "to" => "whois.tonic.to",        "tv" => "whois.tv",        "ru" => "whois.ripn.net",        "org" => "whois.pir.org",        "aero" => "whois.information.aero",        "nl" => "whois.domain-registry.nl"    );      if (!isset($servers[$ext])){        die('Error: No matching nic server found!');    }      $nic_server = $servers[$ext];      $output = '';      // connect to whois server:    if ($conn = fsockopen ($nic_server, 43)) {        fputs($conn, $domain."\r\n");        while(!feof($conn)) {            $output .= fgets($conn,128);        }        fclose($conn);    }    else { die('Error: Could not connect to ' . $nic_server . '!'); }      return $output;}

    Syntax:

    $ Domain = "http://www.blog.koonk.com ";

    $ Result = whois_query ($ domain );

    Print_r ($ result );

    ?>

    9. verify the email address

    Sometimes, when entering a form on a website, the user may enter an incorrect email address. This function can verify whether the email address is valid.

    [Code] php code:

    function is_validemail($email){$check = 0;if(filter_var($email,FILTER_VALIDATE_EMAIL)){$check = 1;}return $check;}

    Syntax:

    $ Email = "blog@koonk.com ";

    $ Check = is_validemail ($ email );

    Echo $ check;

    // If the output is 1, then email is valid.

    ?>

    10. obtain the user's real IP address

    [Code] php code:

    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;  }

    Syntax:

    $ Ip = getRealIpAddr ();

    Echo $ ip;

    ?>

    11. convert URL: from string to hyperlink

    If you are developing a forum, blog, or submitting a regular form, you often need to access a website. With this function, the URL string can be automatically converted to a hyperlink.

    [Code] php code:

    function makeClickableLinks($text) {   $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',   '\1', $text);   $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',   '\1\2', $text);   $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',   '\1', $text);     return $text;

    Syntax:

    $ Text = "This is my first post on http://blog.koonk.com ";

    $ Text = makeClickableLinks ($ text );

    Echo $ text;

    ?>

    12. prevent multiple IP addresses from accessing your website

    This code snippet allows you to prohibit certain IP addresses from accessing your website.

    [Code] php code:

    if ( !file_exists('blocked_ips.txt') ) { $deny_ips = array(  '127.0.0.1',  '192.168.1.1',  '83.76.27.9',  '192.168.1.163' );} else { $deny_ips = file('blocked_ips.txt');}// read user ip adress:$ip = isset($_SERVER['REMOTE_ADDR']) ? trim($_SERVER['REMOTE_ADDR']) : '';  // search current IP in $deny_ips arrayif ( (array_search($ip, $deny_ips))!== FALSE ) { // address is blocked: echo 'Your IP adress ('.$ip.') was blocked!'; exit;}

    13. mandatory file download

    If you need to download a specific file without opening a new window, the following code snippets can help you.

    [Code] php code:

    function force_download($file) {     $dir      = "../log/exports/";     if ((isset($file))&&(file_exists($dir.$file))) {        header("Content-type: application/force-download");        header('Content-Disposition: inline; filename="' . $dir.$file . '"');        header("Content-Transfer-Encoding: Binary");        header("Content-length: ".filesize($dir.$file));        header('Content-Type: application/octet-stream');        header('Content-Disposition: attachment; filename="' . $file . '"');        readfile("$dir$file");     } else {        echo "No file selected";     } }

    Syntax:

    Force_download ("image.jpg ");

    ?>

    14. create JSON data

    You can use the following PHP snippets to create JSON data so that you can easily create mobile app Web services.

    $ Json_data = array ('id' => 1, 'name' => "Mohit ");

    Echo json_encode ($ json_data );

    15. zip file compression

    Use the following PHP snippets to instantly compress zip files

    [Code] php code:

    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;      }  }

    Syntax:

    Optional files=array('file1.jpg ', 'file2.jpg', 'file3.gif ');

    Create_zip ($ files, 'myzipfile.zip ', true );

    ?>

    The above are 46 useful PHP code snippets (1). For more information, see PHP Chinese website (www.php1.cn )!

    Related Article

    Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.