10 Examples of PHP code that must be collected

Source: Internet
Author: User
Tags foreach array exit explode header sql php code split








1, blacklist filtration

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 ' is not spam ';
Ab:3
Dog:3
Cat:2
Monkey:2


2, random color generator

function Randomcolor () {
$str = ' # ';
for ($i = 0; $i < 6; $i + +) {
$randNum = rand (0, 15);
Switch ($randNum) {
Case: $randNum = ' A '; Break
Case one: $randNum = ' B '; Break
Case: $randNum = ' C '; Break
Case: $randNum = ' D '; Break
Case: $randNum = ' E '; Break
Case: $randNum = ' F '; Break
}
$str. = $randNum;
}
return $str;
}
$color = Randomcolor ();


3, download files from the Internet

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.
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);

4, 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 ("~ (ntss+) ~", ", $content);
Switch ($type) {
Case ' Alexa ':
if (Preg_match (' ~<div class= data (downup) > (. +?) </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 ');

5. Force download files


 





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


6, using email to display the user's gravator avatar



 
  


  
  1. $gravatar _link = ' http://www.gravatar.com/avatar/'. MD5 ($comment _author_email). ' S=32 ';
  2. Echo ' ';


7, use curl to get the number of RSS subscriptions



$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);
Viii. Time Difference Calculation
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 '";
}


8. Interception of pictures


 





$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);

9, check whether the website is down



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

"Responsible Editor: Wangxueyan TEL: (010) 68476606"


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.