值得收藏的10个PHP代码样例(黑名单\下载文件)
我们在开发中经常会要用到一些功能,下文小编整理了在开发应用中碰到的一些php经典代码了,下面一起来看看.
一、黑名单过滤,代码如下:
function is_spam($text, $file, $split = ':', $regex = false){ $handle = fopen($file, 'rb'); $contents = fread($handle, filesize($file)); fclose($handle); $lines = explode("n", $contents); $arr = array(); foreach($lines as $line){ list($word, $count) = explode($split, $line); if($regex) $arr[$word] = $count; else $arr[preg_quote($word)] = $count; } preg_match_all("~".implode('|', array_keys($arr))."~", $text, $matches); $temp = array(); foreach($matches[0] as $match){ if(!in_array($match, $temp)){ $temp[$match] = $temp[$match] + 1; if($temp[$match] >= $arr[$word]) return true; } } return false; } $file = 'spam.txt'; $str = 'This string has cat, dog word'; if(is_spam($str, $file)) echo 'this is spam'; else echo 'this is not spam'; ab:3 dog:3 cat:2 monkey:2
二、随机颜色生成器,代码如下:
function randomColor() { $str = '#'; for($i = 0 ; $i < 6 ; $i++) { $randNum = rand(0 , 15); switch ($randNum) { case 10: $randNum = 'A'; break; case 11: $randNum = 'B'; break; case 12: $randNum = 'C'; break; case 13: $randNum = 'D'; break; case 14: $randNum = 'E'; break; case 15: $randNum = 'F'; break; } $str .= $randNum; } return $str; } $color = randomColor();
三、从网上下载文件,代码如下:
set_time_limit(0); // Supports all file types // URL Here: $url = 'http://somsite.com/some_video.flv'; $pi = pathinfo($url); $ext = $pi['extension']; $name = $pi['filename']; // create a new cURL resource $ch = curl_init(); // set URL and other appropriate options curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); curl_setopt($ch, CURLOPT_AUTOREFERER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // grab URL and pass it to the browser $opt = curl_exec($ch); // close cURL resource, and free up system resources curl_close($ch); $saveFile = $name.'.'.$ext; if(preg_match("/[^0-9a-z._-]/i", $saveFile)) $saveFile = md5(microtime(true)).'.'.$ext; $handle = fopen($saveFile, 'wb'); fwrite($handle, $opt); fclose($handle);
四、Alexa/Google Page Rank,代码如下:
function page_rank($page, $type = 'alexa'){ switch($type){ case 'alexa': $url = 'http://alexa.com/siteinfo/'; $handle = fopen($url.$page, 'r'); break; case 'google': $url = 'http://google.com/search?client=navclient-auto&ch=6-1484155081&features=Rank&q=info:'; $handle = fopen($url.'http://'.$page, 'r'); break; } $content = stream_get_contents($handle); fclose($handle); $content = preg_replace("~(n|t|ss+)~",'', $content); switch($type){ case 'alexa': if(preg_match('~<div class="data (down|up)"><img src="/static/imghw/default1.png" data-src="' . $gravatar_link . '" class="lazy" .+? alt="值得收藏的10个PHP代码样例(黑名单\下载文件) " >(.+?) </div>~im',$content,$matches)){ return $matches[2]; }else{ return FALSE; } break; case 'google': $rank = explode(':',$content); if($rank[2] != '') return $rank[2]; else return FALSE; break; default: return FALSE; break; } } // Alexa Page Rank: echo 'Alexa Rank: '.page_rank('techug.com'); echo ' '; // Google Page Rank echo 'Google Rank: '.page_rank('techug.com', 'google');
五、强制下载文件,代码如下:
$filename = $_GET['file']; //Get the fileid from the URL // Query the file ID $query = sprintf("SELECT * FROM tableName WHERE id = '%s'",mysql_real_escape_string($filename)); $sql = mysql_query($query); if(mysql_num_rows($sql) > 0){ $row = mysql_fetch_array($sql); // Set some headers header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Disposition: attachment; filename=".basename($row['FileName']).";"); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($row['FileName'])); @readfile($row['FileName']); exit(0); }else{ header("Location: /"); exit; }
六、用Email显示用户的Gravator头像
$gravatar_link = 'http://www.gravatar.com/avatar/' . md5($comment_author_email) . '?s=32'; echo '<img src="/static/imghw/default1.png" data-src="' . $gravatar_link . '" class="lazy" / alt="值得收藏的10个PHP代码样例(黑名单\下载文件) " >';
七、用cURL获取RSS订阅数,代码如下:
$ch = curl_init(); curl_setopt($ch,CURLOPT_URL,'https://feedburner.google.com/api/awareness/1.0/GetFeedData?id=7qkrmib4r9rscbplq5qgadiiq4'); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,2); $content = curl_exec($ch); $subscribers = get_match('/circulation="(.*)"/isU',$content); curl_close($ch);
八、时间差异计算,代码如下:
function ago($time) { $periods = array("second", "minute", "hour", "day", "week", "month", "year", "decade"); $lengths = array("60","60","24","7","4.35","12","10"); $now = time(); $difference = $now - $time; $tense = "ago"; for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) { $difference /= $lengths[$j]; } $difference = round($difference); if($difference != 1) { $periods[$j].= "s"; } return "$difference $periods[$j] 'ago' "; }
九、截取图片,代码如下:
$filename= "test.jpg"; list($w, $h, $type, $attr) = getimagesize($filename); $src_im = imagecreatefromjpeg($filename); $src_x = '0'; // begin x $src_y = '0'; // begin y $src_w = '100'; // width $src_h = '100'; // height $dst_x = '0'; // destination x $dst_y = '0'; // destination y $dst_im = imagecreatetruecolor($src_w, $src_h); $white = imagecolorallocate($dst_im, 255, 255, 255); imagefill($dst_im, 0, 0, $white); imagecopy($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h); header("Content-type: image/png"); imagepng($dst_im); imagedestroy($dst_im);
十、检查网站是否宕机,代码如下:
function Visit($url){ $agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";$ch=curl_init(); curl_setopt ($ch, CURLOPT_URL,$url ); curl_setopt($ch, CURLOPT_USERAGENT, $agent); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch,CURLOPT_VERBOSE,false); curl_setopt($ch, CURLOPT_TIMEOUT, 5); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch,CURLOPT_SSLVERSION,3); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST, FALSE); $page=curl_exec($ch); //echo curl_error($ch); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if($httpcode>=200 && $httpcode<300) return true; else return false; } if (Visit("http://www.google.com")) echo "Website OK"."n"; else echo "Website DOWN";
本文地址:
转载随意,但请附上文章地址:-)

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Cara menggunakan fungsi ujian kod PHP untuk meningkatkan kebolehselenggaraan kod Dalam proses pembangunan perisian, kebolehselenggaraan kod adalah aspek yang sangat penting. Kod yang boleh diselenggara bermakna ia mudah difahami, mudah diubah suai dan mudah diselenggara. Pengujian ialah cara yang sangat berkesan untuk meningkatkan kebolehselenggaraan kod. Artikel ini akan memperkenalkan cara menggunakan fungsi ujian kod PHP untuk mencapai tujuan ini, dan menyediakan contoh kod yang berkaitan. Ujian unit Ujian unit ialah kaedah ujian yang biasa digunakan dalam pembangunan perisian untuk mengesahkan unit terkecil yang boleh diuji dalam kod. dalam P

Bagaimana untuk menggunakan ungkapan biasa untuk mengubah suai kod PHP secara kelompok untuk memenuhi spesifikasi kod terkini? Pengenalan: Apabila masa berlalu dan teknologi berkembang, spesifikasi kod sentiasa dikemas kini dan dipertingkatkan. Semasa proses pembangunan, kita selalunya perlu mengubah suai kod lama untuk mematuhi spesifikasi kod terkini. Walau bagaimanapun, pengubahsuaian manual boleh menjadi tugas yang membosankan dan memakan masa. Dalam kes ini, ungkapan biasa boleh menjadi alat yang berkuasa. Menggunakan ungkapan biasa, kami boleh mengubah suai kod dalam kelompok dan secara automatik memenuhi spesifikasi kod terkini. 1. Penyediaan: sebelum digunakan

Kod PHP melaksanakan penyulitan parameter permintaan dan pemprosesan antara muka API Baidu Wenxin Yiyan Hitokoto ialah perkhidmatan yang menyediakan akses kepada ayat rawak API Baidu Wenxin Yiyan ialah salah satu antara muka yang boleh dipanggil oleh pembangun. Untuk memastikan keselamatan data, kami boleh menyulitkan parameter permintaan dan menyahsulit respons selepas menerima respons. Berikut ialah contoh kod PHP yang melaksanakan penyulitan parameter permintaan dan pemprosesan penyahsulitan antara muka API Baidu Wenxinyiyan: <?phpfunction

Bagaimana untuk menggunakan alat untuk menyemak secara automatik sama ada kod PHP mematuhi piawaian pengekodan terkini? Pengenalan: Dalam proses pembangunan perisian, kita selalunya perlu mengikut spesifikasi kod tertentu untuk memastikan kebolehbacaan, kebolehselenggaraan dan kebolehskalaan kod. Walau bagaimanapun, menyemak spesifikasi kod secara manual adalah tugas yang membosankan dan terdedah kepada ralat. Untuk meningkatkan kecekapan dan mengurangkan ralat, kami boleh menggunakan beberapa alatan untuk menyemak spesifikasi kod secara automatik. Dalam artikel ini, saya akan memperkenalkan cara menggunakan beberapa alatan popular untuk menyemak secara automatik sama ada kod PHP mematuhi piawaian pengekodan terkini. 1. PH

Pengenalan kepada analisis statik kod PHP dan teknologi pengesanan kerentanan: Dengan pembangunan Internet, PHP, sebagai bahasa skrip sebelah pelayan yang sangat popular, digunakan secara meluas dalam pembangunan laman web dan penjanaan halaman web dinamik. Walau bagaimanapun, disebabkan sifat sintaks PHP yang fleksibel dan tidak standard, kelemahan keselamatan mudah diperkenalkan semasa proses pembangunan. Untuk menyelesaikan masalah ini, analisis statik kod PHP dan teknologi pengesanan kerentanan muncul. 1. Teknologi analisis statik Teknologi analisis statik merujuk kepada menganalisis kod sumber dan menggunakan peraturan statik untuk mengenal pasti isu keselamatan yang berpotensi sebelum kod dijalankan.

Bagaimana untuk menulis kod PHP dalam penyemak imbas dan mengekalkan kod daripada dilaksanakan? Dengan pempopularan Internet, semakin ramai orang mula berhubung dengan pembangunan web, dan pembelajaran PHP juga telah menarik lebih banyak perhatian. PHP ialah bahasa skrip yang berjalan di bahagian pelayan dan sering digunakan untuk menulis halaman web dinamik. Walau bagaimanapun, semasa fasa latihan, kami mahu dapat menulis kod PHP dalam penyemak imbas dan melihat hasilnya, tetapi kami tidak mahu kod itu dilaksanakan. Jadi, bagaimana untuk menulis kod PHP dalam penyemak imbas dan mengelakkannya daripada dilaksanakan? Ini akan diterangkan secara terperinci di bawah. pertama,

Menganalisis fungsi ujian kod PHP dan kepentingannya Prakata: Dalam proses pembangunan perisian, ujian kod adalah pautan yang sangat diperlukan. Dengan menguji kod, potensi pepijat dan ralat boleh ditemui dan diselesaikan dengan berkesan, dan kualiti dan kestabilan kod boleh dipertingkatkan. Dalam pembangunan PHP, fungsi pengujian juga penting. Artikel ini akan menyelidiki fungsi dan kepentingan ujian kod PHP, dan menggambarkannya dengan contoh. 1. Ujian unit fungsional (UnitTesting) ujian kod PHP Ujian unit ialah kaedah ujian yang paling biasa

Tajuk: Nyahpepijat Kod PHP: Ralat Penghuraian dan Tingkah Laku Tidak Dijangka Pengenalan: Nyahpepijat ialah kemahiran penting semasa membangunkan aplikasi PHP. Apabila kod kami melaporkan ralat atau tingkah laku yang tidak dijangka, kami perlu mencari masalah dengan cepat dan membetulkannya. Artikel ini akan meneroka beberapa ralat PHP biasa dan tingkah laku yang tidak dijangka, dan memberikan contoh kod yang sepadan dan kaedah penyahpepijatan. 1. Kesalahan tatabahasa Kesalahan tatabahasa adalah salah satu kesalahan yang sering terjadi. Dalam PHP, ralat sintaks boleh menyebabkan keseluruhan skrip gagal dilaksanakan dengan betul. Berikut ialah kod sampel: <?php
