PHP批量生成缩略图的代码

缺点:长宽不一的图片会被拉伸变形,不能智能裁切,需要智能裁切的,请自行研究。
<?php 
$config = array(); 
$config['path'] = "./"; 
$config['t_width'] = 120; 
$config['t_height'] = 98; 
$config['ignore'] = array("",".",".."); 
$config['prefix'] = "thumb_"; 
$done = 0; 
define("IMAGE_JPG", 2); 
define("ENDL", "\n"); 
if($handle = opendir($config['path'])) { 
while(false !== ($file = readdir($handle))) { 
if(!array_search($file,$config['ignore'])) {

list($im_width, $im_height, $type) = getimagesize($file); 
if($type != IMAGE_JPG) { 
continue; 
}

$op .= "found -> <a href='{$file}'>$file</a>" . ENDL; 
$im = @imagecreatefromjpeg($file); 
if(!$im) { 
$op .= "fail -> couldn't create sour image pointer." . ENDL; 
continue; 
}

if(file_exists($config['prefix'] . $file) || substr($file, 0, strlen($config['prefix'])) == $config['prefix']) { 
$op .= "note -> this file has already got a thumbnail." . ENDL; 
continue; 

$to = imagecreatetruecolor($config['t_width'],$config['t_height']); 
if(!$to) { 
$op .= "fail -> couldn't create dest image pointer." . ENDL; 
continue; 
}

if(!imagecopyresampled($to, $im, 0, 0, 0, 0, $config['t_width'], $config['t_height'], $im_width, $im_height)) { 
$op .= "fail -> couldn't create thumbnail. php fail." . ENDL; 
continue; 
}

//保存文件 
imagejpeg($to, $config['prefix'] . $file); 
$op .= "done -> created thumb: <a href='{$config['prefix']}{$file}'>{$config['prefix']}{$file}</a>" . ENDL; 
$done++; 



closedir($handle); 
$op .= "fin -> {$done} file(s) written" . ENDL; 
echo "<pre>"; 
echo $op; 
echo "</pre>"; 
exit; 
?>

(0)

相关推荐

  • 使用PHP批量生成随机用户名

    程序一:负责从字典中随机提取数据,写入一个新文件.(1.php) 复制代码 代码如下: <?php /* 从字典文件中提取随机值 */ $file1 = "./Words.dic"; $file2 = "./common_pass_mini.dic"; $file3 = "./Sys_Month_Date.Dic"; $rfile = "./5.dic"; $n = 2000; //提取字典 $basef = file(

  • Python实现批量将word转html并将html内容发布至网站的方法

    本文实例讲述了Python实现批量将word转html并将html内容发布至网站的方法.分享给大家供大家参考.具体实现方法如下: #coding=utf-8 __author__ = 'zhm' from win32com import client as wc import os import time import random import MySQLdb import re def wordsToHtml(dir): #批量把文件夹的word文档转换成html文件 #金山WPS调用,抢先

  • python批量生成本地ip地址的方法

    本文实例讲述了python批量生成本地ip地址的方法.分享给大家供大家参考.具体分析如下: 这段代码用于在本地计算机上生成本地ip地址绑定到网卡,生成的是一个bat的批处理文件,运行此批处理文件,可以通过ipconfig查看 #!/usr/bin/python2.7 # -*- coding: utf-8 -*- # Filename: AddIPAliases.py import re,sys,socket,struct # 1. 判断IP地址是否合法: 2. 判断用户输入的IP是否在Clas

  • PHP中批量生成静态html(命令行下运行PHP)

    众所周知,大部分网站的新闻资讯或商品信息都是静态页面.这样做的好处主要是为了:1.加快访问速度,避免过多的操作数据库:2.SEO优化,便于搜索引擎收录. 本示例围绕 CMS 系统的静态页面方案出发,展示批量生成静态 html 功能.注:本文程序只能在 Windows 的 DOS 或 Linux 下执行 PHP 命令来运行.本示例主要有4个文件:config.inc.php(配置文件).Db.class.php(数据库 PDO 类).Model.class.php(PDO数据库操作类).index

  • PHP批量生成图片缩略图的方法

    本文实例讲述了PHP批量生成图片缩略图的方法.分享给大家供大家参考.具体如下: <?php //用PHP批量生成图片缩略图 function mkdirs($dirname,$mode=0777) //创建目录(目录, [模式]) { if(!is_dir($dirname)) { mkdirs($dirname,$mode); //如果目录不存在,递归建立 return mkdir($dirname,$mode); } return true; } function savefile($fil

  • 在Windows系统下使用PHP生成Word文档的教程

    准备工作 首先,请确保在你的Windows系统中已经安装并配置好了一个典型的WAMP环境.由于Interop纯粹是一个Windows的特性,我们将在Windows平台下搭建Apache和PHP.在这个实例中,我使用了EasyPHP 14.1,这款软件安装和配置都十分容易. 接下来,我们要安装Microsoft Office.版本不是严格要求的.我正在使用的是Office2013专业版,但是任何2007之后的Office版本都应该可以使用. 我们然后需要去确保开发Interop应用(又被称作PIA

  • 比较全的一个C#操作word文档示例

    最近两天研究了一下如何使用VS2008(C#语言)输出Word文档.以下是几点总结: 1.非常简单. 2.开发及运行环境要求.操作系统为:WindowsXP(安装.net framework2.0)/Vista/Win7:在操作系统必须安装Word2003完全安装版.这里必须要强调是Word2003完全安装版,因为软件开发及运行都需要一个com组件:Microsoft word 11.0 Object Library.如果不是Word2003完全安装版,可以下载这个com组件,并手动的安装这个c

  • PHP批量生成静态HTML的简单原理和方法

    现在的CMS基本上都支持文章生成HTML,生成HTML静态网页的好处就不用多说了吧,无论是页面打开的浏览速度,还是有利于搜索引擎优化SEO,都有明显的提高,有时候网页中有或多或少的漏洞,把PHP转换成HTML格式也有力地保护了网站. PHP生成HTML的技术要比ASP的技术相对来说要简单一点,下面简要说一下怎样用PHP批量生成HTML技术吧,先看一下面源码: 复制代码 代码如下: <?php   if($_POST[button]){ $sql="select * from doorsjk

  • Python操作Word批量生成文章的方法

    下面通过COM让Python与Word建立连接实现Python操作Word批量生成文章,具体介绍请看下文: 需要做一些会议记录.总共有多少呢?五个地点x7个月份x每月4篇=140篇.虽然不很重要,但是140篇记录完全雷同也不好.大体看了一下,此类的记录大致分为四段.于是决定每段提供四种选项,每段从四选项里随机选一项,拼凑成四段文字,存成一个文件.而且要打印出来,所以准备生成一个140页的Word文档,每页一篇. 需要用到win32com模块(下载链接: http://sourceforge.ne

  • VBS调用Photoshop批量生成缩略图的代码

    模仿腾讯新闻页,给KingCms添加了新闻页图片点播的代码,代码要求的图片点播格式如下: 0###http://www.website.org/UploadFile/123.jpg@@@/small/123.gif@@@8标题一***http://www.website.org/UploadFile/456.jpg@@@/small/456.gif@@@标题二***http://www.website.org/UploadFile/789.jpg@@@/small/789.gif@@@标题三 格

  • PHP批量生成缩略图的代码

    缺点:长宽不一的图片会被拉伸变形,不能智能裁切,需要智能裁切的,请自行研究.<?php  $config = array();  $config['path'] = "./";  $config['t_width'] = 120;  $config['t_height'] = 98;  $config['ignore'] = array("",".","..");  $config['prefix'] = "t

  • ThinkPHP5.0 图片上传生成缩略图实例代码说明

    很多朋友遇到这样一个问题,图片上传生成缩略图,很多人在本机(win)测试成功,上传到linux 服务器后错误. 我也遇到同样的问题.网上一查,有无数的人说是服务器临时文件目录权限问题. 几经思考后,发现并非如此. 其根本的原因是,保存到变量的信息是之前的,之后又move移动到了自己指定的目录下,同时临时文件已经不存在.所以再生成缩略图的时候,需要open的,文件地址应该是自己定义的目录+文件名.然而很多实例文档中,还是使用的move 之前的信息. 又加之在win服务器下,move后,指定目录已生

  • 用Python实现批量生成法务函代码

    目录 情境问题 代码实现: 总结 情境问题 小王是一名法务专员,工作中会处理所在公司的侵权事件并向侵权方发送法务函. 他会按照[法务函模板.docx] Word 文件给[封号名单.xlsx]工作簿中的每个封号人员生成一份法务函. 实现这个结果,他需要手动将[封号名单.xlsx]工作簿中的封号人员的名字和微信号添加到[法务函模板.docx] Word 文件对应的位置上,并将[法务函模板.docx] Word 文件另存为新的文件. 封号人员的人数有多少,他就得重复多少次.以第一个封号人员为例,实现过

  • asp.net 上传图片并同时生成缩略图的代码

    复制代码 代码如下: <%@ Page Language="C#" ResponseEncoding="gb2312" %> <%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Drawing" %> <%@ I

  • php按百分比生成缩略图的代码分享

    于是翻了一下手册,弄懂几个函数后自己写了一个简单的php生成缩略图的程序.没有用类,我觉得一个函数就能搞定,而且对于新手来说更容易去理解,从而可以帮助到更多的人. 支持按比分比缩略,支持按指定的长宽缩略,默认按百分比.程序中注释已经很详细了,如有问题可在下面留言,欢迎与我交流. 源码如下: 复制代码 代码如下: <?php /*  * param ori_img 原图像的名称和路径  * param new_img 生成图像的名称  * param percent 表示按照原图的百分比进行缩略,

  • Asp无组件生成缩略图的代码

    还是先看看基础部分吧.首先,我们知道在页面中显示图片是如下代码: <img src="pic.gif" border="0" width="300" height="260"> src是图片路径,border控制图片边缘宽度,width是图片的长度,height是图片的高度.缩略图的生成其实就是在原始尺寸上缩放.但一般为了尽量少失真,我们都会按比例缩放.于是,获取图片的长宽尺寸也就成了生成缩略图的重点. 下面便是编

  • asp.net生成缩略图实现代码

    复制代码 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Drawing; using System.IO; namespace web三层 { /// <summary> /// 显示请求图片的缩略图,以宽度100像素为最大单位 /// </summary> public class imgSmall : IHttpHan

  • php生成缩略图示例代码分享(使用gd库实现)

    复制代码 代码如下: <form method="post" action="suo_do.php" enctype="multipart/form-data">   <input type="file" name="pic" />   <input type="submit" value="上传1" />   </form&

  • 兼容性比较好的PHP生成缩略图的代码

    复制代码 代码如下: function ImageResize($srcFile,$toW,$toH,$toFile="") { if($toFile==""){ $toFile = $srcFile; } $info = ""; $data = GetImageSize($srcFile,$info); switch ($data[2]) { case 1: if(!function_exists("imagecreatefromgi

随机推荐