10个超级有用值得收藏的PHP代码片段
尽管PHP经常被人诟病,被人贬低,被人当玩笑开,事实证明,PHP是全世界网站开发中使用率最高的编程语言。PHP最大的缺点是太简单,语法不严谨,框架体系很弱,但这也是它最大的优点,一个有点编程背景的普通人,只需要学习PHP半天时间,就可以上手开始开发web应用了。 网上有人总结几种编程语言的特点,我觉得也挺有道理的: 代码如下: 在PHP的流行普及中,网上总结出了很多实用的PHP代码片段,这些代码片段在当你遇到类似的问题时,粘贴过去就可以使用,非常的高效,非常的省时省力。将这些程序员前辈总结出的优秀代码放到自己的知识库中,是一个善于学习的程序员的好习惯。 一、黑名单过滤 代码如下: = $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 二、随机颜色生成器 代码如下: 三、从网络下载文件 代码如下: // 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,CURLOPT_FOLLOWLOCATION,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('~ (.+?) ~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');
五、强制下载文件 代码如下: 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显示用户的Gravatar头像 代码如下: ';
七、通过cURL获取RSS订阅数 代码如下: 八、时间差异计算函数 代码如下: $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' "; } 九、裁剪图片 代码如下: $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); imagefill($dst_im,$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); 十、检查网站是否宕机 代码如下: =200 && $httpcode<300) return true;
else return false;
}
if (Visit("http://www.google.com"))
echo "Website OK"."n";
else
echo "Website DOWN";
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |