PHP开发网站常用的21种功能的代码汇总(3)_PHP技巧_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

PHP开发网站常用的21种功能的代码汇总(3)

作者:黑客防线网安PHP教程基地 来源:黑客防线网安PHP教程基地 浏览次数:0

本篇关键词:代码汇总功能常用
黑客防线网安网讯:  15.在字符断点处截断文字    所谓断字(wordbreak),即一个单词可在转行时断开的地方。这一函数将在断字处截断字符串。    //OriginalPHPcodebyChirpInternet:www.chirp.com.au ...
  15.在字符断点处截断文字
  
  所谓断字(wordbreak)即一个单词可在转行时断开的地方这一函数将在断字处截断字符串
  
  //OriginalPHPcodebyChirpInternet:www.chirp.com.au
  
  //Pleaseacknowledgeuseofthiscodebyincludingthisheader.
  
  functionmyTruncate($string,$limit,$break=".",$pad="..."){
  
  //returnwithnochangeifstringisshorterthan$limit
  
  if(strlen($string)<=$limit)
  
  return$string;
  
  //is$breakpresentbetween$limitandtheendofthestring?
  
  if(false!==($breakpoint=strpos($string,$break,$limit))){
  
  if($breakpoint<strlen($string)-1){
  
  $string=substr($string,0,$breakpoint).$pad;
  
  }
  
  }
  
  return$string;
  
  }
  
  /*****Example****/
  
  $short_string=myTruncate($long_string,100,'');
  
  16.文件Zip压缩
  
  /*createsacompressedzipfile*/
  
  functioncreate_zip($files=array(),$destination='',$overwrite=false){
  
  //ifthezipfilealreadyexistsandoverwriteisfalse,returnfalse
  
  if(file_exists($destination)&&!$overwrite){returnfalse;}
  
  //vars
  
  $valid_files=array();
  
  //iffileswerepassedin...
  
  if(is_array($files)){
  
  //cyclethrougheachfile
  
  foreach($filesas$file){
  
  //makesurethefileexists
  
  if(file_exists($file)){
  
  $valid_files[]=$file;
  
  }
  
  }
  
  }
  
  //ifwehavegoodfiles...
  
  if(count($valid_files)){
  
  //createthearchive
  
  $zip=newZipArchive();
  
  if($zip->open($destination,$overwrite?ZIPARCHIVE::OVERWRITE:ZIPARCHIVE::CREATE)!==true){
  
  returnfalse;
  
  }
  
  //addthefiles
  
  foreach($valid_filesas$file){
  
  $zip->addFile($file,$file);
  
  }
  
  //debug
  
  //echo'Theziparchivecontains',$zip->numFiles,'fileswithastatusof',$zip->status;
  
  //closethezip--done!
  
  $zip->close();
  
  //checktomakesurethefileexists
  
  returnfile_exists($destination);
  
  }
  
  else
  
  {
  
  returnfalse;
  
  }
  
  }
  
  /*****ExampleUsage***/
  
  $files=array('file1.jpg','file2.jpg','file3.gif');
  
  create_zip($files,'myzipfile.zip',true);
  
  17.解压缩Zip文件
  
  /**********************
  
  *@file-pathtozipfile
  
  *@destination-destinationdirectoryforunzippedfiles
  
  */
  
  functionunzip_file($file,$destination){
  
  //createobject
  
  $zip=newZipArchive();
  
  //openarchive
  
  if($zip->open($file)!==TRUE){
  
  die(’Couldnotopenarchive’);
  
  }
  
  //extractcontentstodestinationdirectory
  
  $zip->extractTo($destination);
  
  //closearchive
  
  $zip->close();
  
  echo'Archiveextractedtodirectory';
  
  }
  
  18.为URL地址预设http字符串
  
  有时需要接受一些表单中的网址输入但用户很少添加http://字段,此代码将为网址添加该字段。
  
  if(!preg_match("/^(http|ftp):/",$_POST['url'])){
  
  $_POST['url']='http://'.$_POST['url'];
  
  }
  
  19.将网址字符串转换成超级链接
  
  该函数将URL和E-mail地址字符串转换为可点击的超级链接。
  
  functionmakeClickableLinks($text){
  
  $text=eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',
  
  '<ahref="1">1</a>',$text);
  
  $text=eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',
  
  '1<ahref="http://2">2</a>',$text);
  
  $text=eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',
  
  '<ahref="mailto:1">1</a>',$text);
  
  return$text;
  
  }
  
  20.调整图像尺寸
  
  创建图像缩略图需要许多时间,此代码将有助于了解缩略图的逻辑。
  
  /**********************
  
  *@filename-pathtotheimage
  
  *@tmpname-temporarypathtothumbnail
  
  *@xmax-maxwidth
  
  *@ymax-maxheight
  
  */
  
  functionresize_image($filename,$tmpname,$xmax,$ymax)
  
  {
  
  $ext=explode(".",$filename);
  
  $ext=$ext[count($ext)-1];
  
  if($ext=="jpg"||$ext=="jpeg")
  
  $im=imagecreatefromjpeg($tmpname);
  
  elseif($ext=="png")
  
  $im=imagecreatefrompng($tmpname);
  
  elseif($ext=="gif")
  
  $im=imagecreatefromgif($tmpname);
  
  $x=imagesx($im);
  
  $y=imagesy($im);
  
  if($x<=$xmax&&$y<=$ymax)
  
  return$im;
  
  if($x>=$y){
  
  $newx=$xmax;
  
  $newy=$newx*$y/$x;
  
  }
  
  else{
  
  $newy=$ymax;
  
  $newx=$x/$y*$newy;
  
  }
  
  $im2=imagecreatetruecolor($newx,$newy);
  
  imagecopyresized($im2,$im,0,0,0,0,floor($newx),floor($newy),$x,$y);
  
  return$im2;
  
  }
  
  21.检测Ajax请求
  
  大多数的JavaScript框架如jQuery,Mootools等,在发出Ajax请求时,都会发送额外的HTTP_X_REQUESTED_WITH头部信息,头当他们一个ajax请求,因此你可以在服务器端侦测到Ajax请求。
  
  if(!emptyempty($_SERVER['HTTP_X_REQUESTED_WITH'])&&strtolower($_SERVER['HTTP_X_REQUESTED_WITH'])=='xmlhttprequest'){
  
  //IfAJAXRequestThen
  
  }else{
  
  //somethingelse
  
  }
  
  
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-17683-1.html
网站维护教程更新时间:2012-09-21 05:23:34  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer