一键生成各种尺寸Icon的php脚本的实例代码

 更新时间:2017年7月6日 23:34  点击:1382
php如何一键生成各种尺寸Icon?本文详细介绍了一键生成各种尺寸Icon的php脚本的实例代码,有需要的朋友请看下文。

 

 代码如下 复制代码

<?php

/**

* @name thumb  缩略图函数

* @param  sting  $img_name  图片路径

* @param  int   $max_width 略图最大宽度

* @param  int   $max_height 略图最大高度

* @param  sting  $suffix 略图后缀(如"img_x.jpg"代表小图,"img_m.jpg"代表中图,"img_l.jpg"代表大图)

* @return  void

*/

functionthumb($img_name,$max_width,$max_height,$path,$new_name)

{

  $img_infos=getimagesize($img_name);

  $img_height=$img_infos[0];//图片高

  $img_width=$img_infos[1];//图片宽

  $img_extension='';   //图片后缀名

  

  switch($img_infos[2])

  {

    case1:

      $img_extension='gif';

      break;

    case2:

      $img_extension='jpeg';

      break;

    case3:

      $img_extension='png';

      break;

    default:

      $img_extension='jpeg';

      break;

  }

  

  $new_img_size=array();

  $new_img_size['width'] =$max_width;

  $new_img_size['height'] =$max_height;

    

  $img_func='';  //函数名称

  $img_handle=''; //图片句柄

  $thum_handle='';//略图图片句柄

  

  switch($img_extension)

  {

    case'jpg':

      $img_handle= imagecreatefromjpeg($img_name);

      $img_func='imagejpeg';

      break;

    case'jpeg':

      $img_handle= imagecreatefromjpeg($img_name);

      $img_func='imagejpeg';

      break;

    case'png':

      $img_handle= imagecreatefrompng($img_name);

      imagesavealpha($img_handle, true);

      $img_func='imagepng';

      break;

    case'gif':

      $img_handle= imagecreatefromgif($img_name);

      $img_func='imagegif';

      break;

    default:

      $img_handle= imagecreatefromjpeg($img_name);

      $img_func='imagejpeg';

      break;

  }

  

  $quality= 100;//图片质量

  if($img_func=='imagepng')

  {

    $quality= 9;

  } 

  

  $thum_handle= imagecreatetruecolor($new_img_size['height'],$new_img_size['width']);

  imagealphablending($thum_handle,false);//这里很重要,意思是不合并颜色,直接用$img图像颜色替换,包括透明色;

  imagesavealpha($thum_handle,true);//这里很重要,意思是不要丢了$thumb图像的透明色;

  

  if(function_exists('imagecopyresampled'))

  {

    imagecopyresampled($thum_handle,$img_handle,  0, 0, 0,  0,$new_img_size['height'],$new_img_size['width'],$img_height,$img_width);

  } 

  else 

  {

    imagecopyresized($thum_handle,$img_handle,  0, 0, 0,  0,$new_img_size['height'],$new_img_size['width'],$img_height,$img_width);

  }

  

  call_user_func_array($img_func,array($thum_handle,$path.'/'.$new_name,$quality));

  imagedestroy($thum_handle);//清除句柄

  imagedestroy($img_handle);//清除句柄

}

  

  

$IconArray=array 

(

  "IOS8"=>array 

  (

    array("width"=> 180, "height"=> 180,"path"=>"ios8",  "name"=>"Icon-180.png"),

    array("width"=> 120, "height"=> 120,"path"=>"ios8",  "name"=>"Icon-120.png"),

    array("width"=> 152, "height"=> 152,"path"=>"ios8",  "name"=>"Icon-152.png"),

    array("width"=> 76,  "height"=> 76,   "path"=>"ios8",  "name"=>"Icon-76.png"), 

    array("width"=> 144, "height"=> 144,"path"=>"ios8",  "name"=>"Icon-144.png"),

    array("width"=> 72,  "height"=> 72,   "path"=>"ios8",  "name"=>"Icon-72.png"),

    array("width"=> 114, "height"=> 114,"path"=>"ios8",  "name"=>"Icon-114.png"),

    array("width"=> 57,  "height"=> 57,   "path"=>"ios8",  "name"=>"Icon-57.png"), 

    array("width"=> 100, "height"=> 100,"path"=>"ios8",  "name"=>"Icon-100.png"),

    array("width"=> 50,  "height"=> 50,   "path"=>"ios8",  "name"=>"Icon-50.png"), 

    array("width"=> 80,  "height"=> 80,   "path"=>"ios8",  "name"=>"Icon-80.png"),

    array("width"=> 40,  "height"=> 40,   "path"=>"ios8",  "name"=>"Icon-40.png"),

    array("width"=> 58,  "height"=> 58,   "path"=>"ios8",  "name"=>"Icon-58.png"),

    array("width"=> 29,  "height"=> 29,   "path"=>"ios8",  "name"=>"Icon-29.png"),

  ),

  "IOS"=>array 

  (

    array("width"=> 180, "height"=> 180,"path"=>"ios",   "name"=>"Icon-60@3x.png"),

    array("width"=> 120, "height"=> 120,"path"=>"ios",   "name"=>"Icon-60@2x.png"),

    array("width"=> 152, "height"=> 152,"path"=>"ios",   "name"=>"Icon-76@2x.png"),

    array("width"=> 76,  "height"=> 76,   "path"=>"ios",   "name"=>"Icon-76.png"), 

    array("width"=> 144, "height"=> 144,"path"=>"ios",   "name"=>"Icon-72@2x.png"),

    array("width"=> 72,  "height"=> 72,   "path"=>"ios",   "name"=>"Icon-72.png"),

    array("width"=> 114, "height"=> 114,"path"=>"ios",   "name"=>"Icon-57@2x.png"),

    array("width"=> 57,  "height"=> 57,   "path"=>"ios",   "name"=>"Icon-57.png"), 

    array("width"=> 100, "height"=> 100,"path"=>"ios",   "name"=>"Icon-50@2x.png"),

    array("width"=> 50,  "height"=> 50,   "path"=>"ios",   "name"=>"Icon-50.png"), 

    array("width"=> 80,  "height"=> 80,   "path"=>"ios",   "name"=>"Icon-40@2x.png"),

    array("width"=> 40,  "height"=> 40,   "path"=>"ios",   "name"=>"Icon-40.png"),

    array("width"=> 58,  "height"=> 58,   "path"=>"ios",   "name"=>"Icon-29@2x.png"),

    array("width"=> 29,  "height"=> 29,   "path"=>"ios",   "name"=>"Icon-29.png"),

  )

  ,

  "ANDROID"=>array

  (

    array("width"=> 144, "height"=> 144,  "path"=>"android/drawable",     "name"=>"icon.png"),

    array("width"=> 144, "height"=> 144,  "path"=>"android/drawable-xhdpi","name"=>"icon.png"),

    array("width"=> 72,  "height"=> 72,"path"=>"android/drawable-hdpi",   "name"=>"icon.png"),

    array("width"=> 48,  "height"=> 48,"path"=>"android/drawable-mdpi",   "name"=>"icon.png"),

    array("width"=> 32,  "height"=> 32,"path"=>"android/drawable-ldpi",   "name"=>"icon.png")

  )

);

  

  

foreach($IconArray["IOS8"]as$key=>$IconType) 

{

  thumb("icon.png",$IconType['width'],$IconType['height'],$IconType['path'],$IconType['name']);

}

  

foreach($IconArray["IOS"]as$key=>$IconType) 

{

  thumb("icon.png",$IconType['width'],$IconType['height'],$IconType['path'],$IconType['name']);

}

  

foreach($IconArray["ANDROID"]as$key=>$IconType) 

{

  thumb("icon.png",$IconType['width'],$IconType['height'],$IconType['path'],$IconType['name']);

}

  

?>

 

小编推荐的这篇文章介绍了php使用变量动态创建类的对象用法示例,非常详细,有需要的同学快来看看吧。

这是一个能用变量动态创建类的对象的用法,就是根据$pay_code变量值来创建对象.

例如下例就是创建类T的一个对象$payment.然后就可以使用了.咋一看像是个新的知识点,其实不然,只不过是编程中的一个技巧而已.

 代码如下复制代码

$pay_code='T'

$payment=new$pay_code();

echo$payment;

echo$payment->ep();

classT{

  functionep(){

    return'我是T里面的方法!'

  }

  function__toString(){

    return'这是个T类'

  }

}

classW{

  functionep(){

    return'我是W里面的方法!'

  }

  function__toString(){

    return'这是个W类'

  }

}

小编推荐的这篇文章介绍了PHP实现判断数组是一维、二维或几维的方法,非常实用,有兴趣的同学快来看看吧。

这里使用的自定义函数,可以判断数组是一维的,还是二维的,或是几维的数组:

 代码如下复制代码

functiongetmaxdim($vDim)

{

  if(!is_array($vDim))return0;

  else

  {

    $max1= 0;

    foreach($vDimas$item1)

    {

     $t1=$this->getmaxdim($item1);

     if($t1>$max1)$max1=$t1;

    }

    return$max1+ 1;

  }

}

验证过可以使用:

 代码如下复制代码

//测试:

$arr=array('yiyi'=>1212,'haha'=>array('heihei'=>array(array("a")),"b"));

echogetmaxdim($arr);

//结果: 4

本文用实例解析;额html静态页面调用php文件的方法,非常实用,初学php有不懂的同学快来看看这篇文章吧。

本文实例讲述了html静态页面调用php文件的方法。分享给大家供大家参考。具体方法如下:

静态页面中看上去好像是不能直接调用php文件的,但是却可以使用js调用方式来调用php文件,当然还可以使用ajax 调用php文件,下面就来给大家介绍一下:

举一个简单的例子来说明:
如在页面a.html中用下面这句调用,可以将action=test的参数传递到b.php。
Javascript代码

 代码如下复制代码



在b.php中有这样一段PHP代码:

<?php
$action=$_GET['action'];    
echo "document.write('".$action."');n";   
?>

当执行a.html文件时,就会调用b.php文件,并将b.php文件的输出作为JS语句来执行,内容为JS传递的参数action的值,也就是在PHP文件中接受过来的action的值.

jquery的load函数是请求另一个文件并加载到当前DOM里的调用

1、加载一个php文件,该php文件不含传递参数

$("#myID").load("test.php");

2、加载一个php文件,该php文件含有一个传递参数

$("#myID").load("test.php",{"name" : "Adam"});

3. 加载一个php文件,该php文件含有多个传递参数。注:参数间用逗号分隔

$("#myID").load("test.php",{"name" : "Adam" ,"site":www.jb51.net});
//导入的php文件含有一个传递参数,类似于:test.php?name=Adam&site=www.jb51.net

4. 加载一个php文件,该php文件以数组作为传递参数

$("#myID").load("test.php",{'myinfo[]', ["Adam", www.jb51.net});
//导入的php文件含有一个数组传递参数。

[!--infotagslink--]

相关文章

  • 纯JS代码实现一键分享功能

    在qq空间,新浪微博,人人网等网络平台大家经常可以看到一键分享功能,那么基于js代码是如何实现一键分享的呢?下面脚本之家小编给大家介绍js实现一键分享功能的代码,需要的朋友参考下吧...2016-04-22
  • 用PHP脚本自动把纯文本文件转换成Web页面

    最近,我的一个老朋友向我打电话求助。他从事记者的职业有多年了,最近获得了重新出版他的很多早期专栏的权利。他希望把他的作品贴在Web上;但是他的专栏都是以纯文本文件的...2016-11-25
  • MySQL 处理插入过程中的主键唯一键重复值的解决方法

    本篇文章主要介绍在插入数据到表中遇到键重复避免插入重复值的处理方法,主要涉及到IGNORE,ON DUPLICATE KEY UPDATE,REPLACE的相关知识,感兴趣的朋友一起学习吧...2016-04-18
  • PHP脚本执行超时的解决办法

    在php中默认脚本执行超时时间为30秒了,如果你未进行设置30秒之后如果你的脚本还未执行完就会超时了,下面我来给大详解解决PHP脚本执行超时的方法。 php.ini 中缺省...2016-11-25
  • 我想写一个通用的PHP脚本来处理任何传进来的表单F

    确定track_vars在你php3.ini文件中。如果你在编译PHP时加上"--enable-track-vars",肯定就有了。你要在下面二种方式中选择一种:在编译时加入;或是在每个脚本的第一行加入...2016-11-25
  • 使用PHP重新实现PHP脚本引擎内置函数

    // 实在无聊,突发奇想,想把PHP里面部分已经提供封装好的函数重新使用PHP实现一遍, // 于是便有了下面的代码主要实现了PHP中部分字符串处理函数,同时实现了一些PHP中...2016-11-25
  • form表单传递数组数据、php脚本接收的实例

    下面小编就为大家带来一篇form表单传递数组数据、php脚本接收的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-02-18
  • 一键生成各种尺寸Icon的php脚本(实例)

    下面小编就为大家带来一篇一键生成各种尺寸Icon的php脚本(实例)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-02-18
  • 利用Python代码实现一键抠背景功能

    这篇文章主要给大家介绍了关于如何利用Python代码实现一键抠背景的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-05-08
  • php脚本怎么运行环境?

    php脚本怎么运行环境?本文详细介绍了PHP运行环境配置与开发环境的配置,刚刚接触php的同学可以参考一下本文。 前提示时间一个博友,建议我提供PHP开发环境的搭建文章...2017-07-06
  • PHP脚本数据库功能详解(3)

    (作者:王凯波)   用类加快PHP的数据库开发   数据库的访问函数较多,使用不当会降低效率,甚至导致错误。而PHP的本身就是开放的和可扩充的,很多人为它开发各种功能的源...2016-11-25
  • Java基础之教你怎么用代码一键生成POJO

    这篇文章主要介绍了Java基础之教你怎么用代码一键生成POJO,文中有非常详细的代码示例,对正在学习Java的小伙伴们有非常好的帮助,需要的朋友可以参考下...2021-04-25
  • iis6手工创建网站后无法运行php脚本的解决方法

    下面小编就为大家带来一篇iis6手工创建网站后无法运行php脚本的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2017-06-11
  • 用PHP脚本在Linux系统上读取输入和对文件进行操作

    Perl作为Linux系统命令行脚本的首选解释语言的日子一去不复返了。今天,我们有了更多的选择,包括Python、Ruby和PHP。假如你已经为网站编写PHP代码,并熟谙这种语言,那么你会...2016-11-25
  • 上传多个文件的PHP脚本

    译者注:本文的原名是《Creating a Multi-File Upload Script in PHP》。我个个觉得这文章写得一般,代码也不是非常专业,但是它比较短,而且一时间也找不到好一点的文章,就把...2016-11-25
  • 一键生成各种尺寸Icon的php脚本的实例代码

    php如何一键生成各种尺寸Icon?本文详细介绍了一键生成各种尺寸Icon的php脚本的实例代码,有需要的朋友请看下文。 代码如下 复制代码 <?php/**...2017-07-06
  • php 计算PHP脚本执行时间例子

    计算PHP脚本执行时间我们会用到microtime函数了,主要原理是在页面开始与结束各加一个函数,然后利用结束时间减去开始时间就可以了,下文来给各位新手介绍一下。 在PHP...2016-11-25
  • 探讨:关闭浏览器后,php脚本会不会继续运行

    本篇文章是对关闭浏览器后,php脚本会不会继续运行进行了详细的分析介绍,需要的朋友参考下...2020-06-25