Heim >Backend-Entwicklung >PHP-Tutorial >46 sehr nützliche PHP-Code-Snippets (1)
Es ist immer gut, beim Schreiben von Code ein magisches Werkzeug zu haben! Hier ist eine Sammlung von über 40 PHP-Codefragmenten, die Sie bei der Entwicklung von PHP-Projekten unterstützen.
Diese PHP-Snippets sind auch für PHP-Anfänger sehr hilfreich und sehr einfach zu erlernen~
SMS senden
Beim Arbeiten Web- oder Mobilanwendungen entwickeln stoßen wir oft auf die Notwendigkeit, SMS an Benutzer zu senden, sei es zum Anmelden oder zum Versenden von Informationen. Der folgende PHP-Code implementiert die Funktion des SMS-Versands.
Um SMS in einer beliebigen Sprache zu versenden, ist ein SMS-Gateway erforderlich. Die meisten SMS stellen eine API bereit, hier wird MSG91 als SMS-Gateway verwendet.
[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 verification curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); //get response $output = curl_exec($ch); //Print error if any if(curl_errno($ch)) { echo 'error:' . curl_error($ch); } curl_close($ch); }
Darunter erfordert „$authKey = „XXXXXXXXXXXX“;“ die Eingabe Ihres Passworts und „$senderId = „IKOONK“;“ erfordert die Eingabe Ihrer SenderID. Bei der Eingabe einer Mobiltelefonnummer müssen Sie die Landesvorwahl angeben (z. B. 1 für die USA, 91 für Indien).
Syntax:
e1b0111affb0236716bf7a07bfa48dc7
2. Verwenden Sie Mandrill zum Senden von E-Mails
Mandrill ist ein leistungsstarker SMTP-Anbieter. Entwickler neigen dazu, für eine bessere Posteingangszustellung einen Drittanbieter-SMTP-Anbieter zu nutzen.
In der folgenden Funktion müssen Sie „Mandrill.php“ im selben Ordner wie eine PHP-Datei ablegen, damit Sie TA zum Versenden von E-Mails verwenden können.
[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'; //geben Sie hier Ihren API-Schlüssel an"Hier müssen Sie Ihren API-Schlüssel angeben (von Ihrem Mandrill-Konto). ).
Syntax:
419971d16df7e92d5665ad51b8d6c91f
Um die besten Ergebnisse zu erzielen, folgen Sie am besten Mandrills Tutorial zur DNS-Konfiguration
3. PHP-Funktion: SQL-Injection verhindern
SQL-Injection oder SQLi sind gängige Mittel zum Angriff auf Websites . Mit dem folgenden Code können Sie diese Tools verhindern: >$text = "3f1c4e4b6b16bbbd69b2ee476dc4f83aalert(1)2cacc6d41bbb37262a98f745aa00fbf0";
$text = clean($text);
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; }echo $text;?>4. Benutzerstandort ermittelnVerwenden Sie die folgende Funktion, um die Stadt zu ermitteln, von der aus der Benutzer Ihre Website besucht[Code]php-Code:
Syntax:
695bc6219b18681d05ddfe4387bbd7f4
5 der Quellcode der WebseiteVerwenden Sie die folgende Funktion, Sie können den HTML-Code jeder Webseite abrufen [Code]PHP-Code:Syntax:
8aabfbae48637d1fa225c546bf00946b
6. Zählen Sie Benutzer, denen Ihre Facebook-Seite gefällt[Code]php-Code:Syntax:
< ;?php
$page = "koonktechnologies";
$count = fb_fan_count($page);
function fb_fan_count($facebook_name) { $data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name)); $likes = $data->likes; return $likes; }echo $count;?> 7. Bestimmen Sie die dominante Farbe eines Bildes [code]php-Code:
8. Whois-Abfrage
Verwenden Sie die folgende Funktion. Erhalten Sie vollständige Details zu jedem Domain-Benutzer
[Code]PHP-Code:
Syntax: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); }</imagesx($i);$x++)>
37729cfd4ee272b4058a6449c87bf03c
9. E-Mail-Adresse überprüfenManchmal gibt der Benutzer beim Ausfüllen eines Formulars auf einer Website möglicherweise eine falsche Eingabe ein E-Mail-Adresse Diese Funktion kann überprüfen, ob die E-Mail-Adresse gültig ist. [Code]php-Code:Syntax:
19fce1c8e0cae6b27a504bb71e5fd378
10. 获取用户的真实 IP
[代码]php代码:
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; }
语法:
9c089c1b032d5d3e8774c3b562b7d772
11. 转换 URL:从字符串变成超链接
如果你正在开发论坛,博客或者是一个常规的表单提交,很多时候都要用户访问一个网站。使用这个函数,URL 字符串就可以自动的转换为超链接。
[代码]php代码:
function makeClickableLinks($text) { $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', '<a href="\1">\1</a>', $text); $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)', '\1<a href="http://\2">\2</a>', $text); $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})', '<a href="mailto:\1">\1</a>', $text); return $text;
语法:
794adf657d97aff47bc7927f295b5895
12. 阻止多个 IP 访问你的网站
这个代码片段可以方便你禁止某些特定的 IP 地址访问你的网站
[代码]php代码:
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 array if ( (array_search($ip, $deny_ips))!== FALSE ) { // address is blocked: echo 'Your IP adress ('.$ip.') was blocked!'; exit; }
13. 强制性文件下载
如果你需要下载特定的文件而不用另开新窗口,下面的代码片段可以帮助你。
[代码]php代码:
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"; } }
语法:
3a8cb7f761becb9db2e161aa2a765c61
14. 创建 JSON 数据
使用下面的 PHP 片段可以创建 JSON 数据,可以方便你创建移动应用的 Web 服务
$json_data = array ('id'=>1,'name'=>"Mohit");
echo json_encode($json_data);
15. 压缩 zip 文件
使用下面的 PHP 片段可以即时压缩 zip 文件
[代码]php代码:
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; } }
语法:
3cb669f4efda051f9550154fbe08f9f1
以上就是46 个非常有用的 PHP 代码片段(一)的内容,更多相关内容请关注PHP中文网(www.php.cn)!