When developing web or mobile applications, you often encounter the need to send SMS to users, either for login reasons or to send information. The following PHP code implements the function of sending SMS.
In order to send SMS in any language, an SMS gateway is required. Most SMS will provide an API, here MSG91 is used as the SMS gateway.
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); }
Among them, "$authKey = "XXXXXXXXXXX";" requires you to enter your password, and "$senderId = "IKOONK";" requires you to enter your SenderID. When entering a mobile number, you need to specify the country code (for example, 1 for the United States, 91 for India).
Syntax:
<?php$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 inbox 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.
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”这里需要你指定你的 API 密钥(从 Mandrill 账户中获得)。
Syntax:
<?php$to = "abc@example.com";$subject = "This is a test email";$message = "Hello World!"; send_email($to,$subject,$message);?>
In order to achieve the best results, it is best to follow Mandrill’s tutorial to configure DNS.
3. PHP function: Prevent SQL injection
SQL injection or SQLi are common means of attacking websites. Using the following code can help you prevent these injections.
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:
<?php$text = "<script>alert(1)</script>";$text = clean($text);echo $text;?>
4. Detect user location
Use the following function to detect which city the user is visiting from your website.
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('{<li>City : ([^<]*)</li>}i', $content, $regs) ) { $city = $regs[1]; } if ( preg_match('{<li>State/Province : ([^<]*)</li>}i', $content, $regs) ) { $state = $regs[1]; } if( $city!='' && $state!='' ){ $location = $city . ', ' . $state; return $location; }else{ return $default; } }
Syntax:
<?php$ip = $_SERVER['REMOTE_ADDR'];$city = detect_city($ip);echo $city;?>
5. Get the source code of the Web page
Use the following function to get the HTML code of any Web page.
function display_sourcecode($url) {$lines = file($url);$output = "";foreach ($lines as $line_num => $line) { // loop thru each line and prepend line numbers $output.= "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n"; } } 语法: <?php$url = "http://blog.koonk.com";$source = display_sourcecode($url);echo $source;?>
6. Count users who like your Facebook page
function fb_fan_count($facebook_name) { $data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name)); $likes = $data->likes; return $likes; }
Syntax:
<?php$page = "koonktechnologies";$count = fb_fan_count($page);echo $count;?>
7. Identify any image The dominant color of
function dominant_color($image) {$i = imagecreatefromjpeg($image);for ($x=0;$x<imagesx($i);$x++) { for ($y=0;$y<imagesy($i);$y++) { $rgb = imagecolorat($i,$x,$y); $r = ($rgb >> 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 get the complete details of the user of any domain name.
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:
<?php$domain = "http://www.blog.koonk.com";$result = whois_query($domain);print_r($result);?>
9. Verify email address
Sometimes, when filling out a form on a website, users may enter the wrong email address , this function can verify whether the email address is valid.
function is_validemail($email) {$check = 0;if(filter_var($email,FILTER_VALIDATE_EMAIL)) {$check = 1; }return $check; }
Syntax:
<?php$email = "blog@koonk.com";$check = is_validemail($email);echo $check;// If the output is 1, then email is valid.?>
10. Get the user’s real 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; }
Syntax:
<?php$ip = getRealIpAddr();echo $ip;?>
Related recommendations:
How to send Alibaba Cloud PHP SMS SMS service verification code
Complete SMS information forwarding with the help of PHP server
php Send SMS example code_PHP tutorial
The above is the detailed content of PHP implements function code for sending SMS. For more information, please follow other related articles on the PHP Chinese website!