生成缩略图

 更新时间:2016年11月25日 15:19  点击:1630

生成缩略图
$tx=GetImageSize($sample);
    if($tx[0]<=$tx[1] and $tx[1]>=120){
       $height=120;
       $width=intval($height*$tx[0]/$tx[1]);
    }
    if($tx[0]>=$tx[1] and $tx[0]>=100){
       $width=100;
       $height=intval($width*$tx[1]/$tx[0]);
    }
    if($tx[0]<100 and $tx[1]<120){
       $width=$tx[0];
       $height=$tx[1];
    }
    makethumb2($sample,$target,$width,$height);
    // $srcFile: 源文件
    // $dstFile: 目标文件
    // $dstW: 目标图片宽度
    // $dstH: 目标文件高度
    function makethumb2($srcFile,$dstFile,$dstW,$dstH){
                 $data=GetImageSize($srcFile,&$info);
                 switch($data[2]){
                            case 1:
                                     $im=@ImageCreateFromGIF($srcFile);
                                     break;
                            case 2:
实战PHP/GTK(转载)
刁馋 发表于 2002-2-19 15:25 PHP编程 ←返回版面     
以前PHP被认为只能用来编写服务器端的CGI程序,如果说PHP能够开发Windows下的GUI(图形用户界面)程序,你相信吗?最近,PHP的开发小组成功开发出了捆绑GTK+的PHP,那么就可以开发Windows下的GUI程序了。
一、建立PHP/GTK运行环境:
其实GUI程序和普通的PHPCGI程序没有什么区别,不过是PHP/GTK程序由GTK的类来生成GUI界面而已,他们同样是开放源代码,靠PHP来解析建立窗口。如果你已经建立好了PHP的调试环境,那么安装PHP/GTK环境比较简单:
1、下载php_gtk.dll(这个dll文件用于解析PHP源程序里面的GTK代码),下载后将其解压到PHP的扩展(extension)目录中;
2、下载其他PHP/GTK的dll文件(一共6个),将他们解压缩到Windows的system32目录里面;
3、打开php.ini,在扩展设置部分“Windows Extensions”最下面加入“extension=php_gtk.dll”的语句,建议先备份php.ini,避免修改失败使得建立好的PHP运行环境作废;
现在就建立好了PHP/GTK的运行环境了。当然,你也可以不作第二步,而改为在每个PHP/GTK程序源代码的第一行加入“dl('php_gtk.dll')”来动态加载GTK的支持。
如果你还没有建立PHP运行环境,那么安装要更加简单:
1、下载整个PHP/GTK的捆绑支持包,然后将他们解压缩到c盘的PHP4目录下面;
2、将winnt目录下面的dll文件拷贝到Windows的system32目录中,将php.ini文件拷贝到Windows的目录中;
建立好了PHP/GTK的运行后,可以用命令行模式的PHP来运行一个PHP/GTK程序:在运行中输入“c:php4php -q gtkprogrampath”,其中“c:php4php”改为PHP.EXE的路径,“gtkprogrampath”就是PHP/GTK程序的路径。比如:“c:php4php -q c:php4sampleshello.php”将会运行PHP/GTK运行包中附带的例子“hello world”程序。
二、编译PHP/GTK程序:
如果你作出一个PHP/GTK的应用程序,还需要对方的电脑建立PHP的运行环境并且使用PHP命令行模式来解析才可以执行的话,那就过于复杂了。那么怎么样才可以编译一个PHP/GTK的程序呢?经过一番搜索,笔者发现了PHPCompiler这个软件。
PHPCompiler由www.deskcode.com开发(http://www.deskcode.com/phpcompiler),可以将PHP编译成为EXE可执行文件,内置了PHP的支持,如果你要编译一个PHP/GTK程序,必须建立PHP/GTK的运行环境(参照前面的步骤)。要编译一个PHP/GTK程序的步骤如下:

模拟xcopy的函数
<?php
/*************************************
* 系统名称:模拟xcopy的函数
* 程序功能:模拟xcopy的函数
* 开发日期:2003/03/14
*************************************/
?>
<?
//copy a direction’s all files to another direction
function xCopy($source, $destination, $child){
//用法:
// xCopy("feiy","feiy2",1):拷贝feiy下的文件到 feiy2,包括子目录
// xCopy("feiy","feiy2",0):拷贝feiy下的文件到 feiy2,不包括子目录
//参数说明:
// $source:源目录名
// $destination:目的目录名
// $child:复制时,是不是包含的子目录
if(!is_dir($source)){
echo("Error:the $source is not a direction!");
return 0;
}
if(!is_dir($destination)){
mkdir($destination,0777);
}
$handle=dir($source);
while($entry=$handle->read()) {
if(($entry!=".")&&($entry!="..")){
if(is_dir($source."/".$entry)){
if($child)
xCopy($source."/".$entry,$destination."/".$entry,$child);
}
else{
copy($source."/".$entry,$destination."/".$entry);
}
}
}
return 1;
}
?>

一个目录遍历函数
<?php
function dirtree($path="./test") {
    echo "<dl>";
    $d = dir($path);
    while(false !== ($v = $d->read())) {
    if($v == "."
$v == "..")
        continue;
    $file = $d->path."/".$v;
    echo "<dt>$v";
    if(is_dir($file))
        dirtree($file);
    }
    $d->close();
    echo "</dl>";
}
dirtree();
?>


Get或Post提交值的非法数据处理
<?php
//********************************************************
//-- 程序名称:StrSwap V1.01
//-- 程序编写:[email]cngift@163.com[/email]
//-- 完成: 2002-8-1
//-- 程序用途:Get或Post提交值的非法数据处理
//-- 备注: 本程序需要加载在所有程序处理前使用,以便自动进行
//-- 程序中使用的变量的替换
//-- 由于发现严重BUG紧急升级
//-- Copyright By cngift ◎ 2002
//********************************************************
class StrSwap{
//当以Get方式提交变量时用于连接变量的连接符
var $GetSplitStr = "&&";
var $TempArray = array();
var $VariableArray = array();
//********************************************************
//-- 程序名称:Main()
//-- 程序用途:本类的默认运行方式
//-- 传入参数:无
//********************************************************
function Main(){
global $REQUEST_METHOD;
if("GET"==$REQUEST_METHOD){
$this->SubGetStrToArray();
}
if("POST"==$REQUEST_METHOD){
$this->SubPostStrToArray();
}
$this->GlobalVariable();
}
//********************************************************
//-- 程序名称:SubGetStrToArray()
//-- 程序用途:当变量以Get方式提交时所调用的方法
//-- 传入参数:无
//********************************************************
function SubGetStrToArray(){
global $QUERY_STRING;
$this->TempArray = explode($this->GetSplitStr,$QUERY_STRING);
for($i=0;$i<sizeof($this->TempArray);$i++){
$temp = explode('=',$this->TempArray[$i]);
$this->VariableArray[$i][0] = $temp[0];
$this->VariableArray[$i][1] = $this->StrReplace($temp[1]);
}
}
//********************************************************
//-- 程序名称:SubPostStrToArray()
//-- 程序用途:当变量以POST方式提交时所调用的方法
//-- 传入参数:无
//********************************************************
[!--infotagslink--]

相关文章

  • php二维码生成

    本文介绍两种使用 php 生成二维码的方法。 (1)利用google生成二维码的开放接口,代码如下: /** * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】 * @param strin...2015-10-21
  • Java生成随机姓名、性别和年龄的实现示例

    这篇文章主要介绍了Java生成随机姓名、性别和年龄的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-10-01
  • C#生成随机数功能示例

    这篇文章主要介绍了C#生成随机数功能,涉及C#数学运算与字符串操作相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • php生成唯一数字id的方法汇总

    关于生成唯一数字ID的问题,是不是需要使用rand生成一个随机数,然后去数据库查询是否有这个数呢?感觉这样的话有点费时间,有没有其他方法呢?当然不是,其实有两种方法可以解决。 1. 如果你只用php而不用数据库的话,那时间戳+随...2015-11-24
  • jQuery为动态生成的select元素添加事件的方法

    下面小编就为大家带来一篇jQuery为动态生成的select元素添加事件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-09-01
  • PHP自动生成后台导航网址的最佳方法

    经常制作开发不同的网站的后台,写过很多种不同的后台导航写法。 最终积累了这种最写法,算是最好的吧...2013-09-29
  • js生成随机数的方法实例

    js生成随机数主要用到了内置的Math对象的random()方法。用法如:Math.random()。它返回的是一个 0 ~ 1 之间的随机数。有了这么一个方法,那生成任意随机数就好理解了。比如实际中我们可能会有如下的需要: (1)生成一个 0 - 1...2015-10-21
  • c#生成高清缩略图的二个示例分享

    这篇文章主要介绍了c#生成高清缩略图的二个示例,需要的朋友可以参考下...2020-06-25
  • PHP验证码生成与验证例子

    验证码是一个现在WEB2.0中常见的一个功能了,像注册、登录又或者是留言页面,都需要注册码来验证当前操作者的合法性,我们会看到有些网站没有验证码,但那是更高级的验证了,...2016-11-25
  • PHP生成不同颜色、不同大小的tag标签函数

    复制代码 代码如下:function getTagStyle(){ $minFontSize=8; //最小字体大小,可根据需要自行更改 $maxFontSize=18; //最大字体大小,可根据需要自行更改 return 'font-size:'.($minFontSize+lcg_value()*(abs($maxFo...2013-10-04
  • JS生成某个范围的随机数【四种情况详解】

    下面小编就为大家带来一篇JS生成某个范围的随机数【四种情况详解】。小编觉得挺不错的,现在分享给大家,也给大家做个参考,一起跟随小编过来看看吧...2016-04-22
  • php中利用str_pad函数生成数字递增形式的产品编号

    解决办法:$str=”QB”.str_pad(($maxid[0]["max(id)"]+1),5,”0″,STR_PAD_LEFT ); 其中$maxid[0]["max(id)"]+1) 是利用max函数从数据库中找也ID最大的一个值, ID为主键,不会重复。 str_pad() 函数把字符串填充为指...2013-10-04
  • C#生成Word文档代码示例

    这篇文章主要介绍了C#生成Word文档代码示例,本文直接给出代码实例,需要的朋友可以参考下...2020-06-25
  • Vue组件文档生成工具库的方法

    本文主要介绍了Vue组件文档生成工具库的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-11
  • PHP简单实现生成txt文件到指定目录的方法

    这篇文章主要介绍了PHP简单实现生成txt文件到指定目录的方法,简单对比分析了PHP中fwrite及file_put_contents等函数的使用方法,需要的朋友可以参考下...2016-04-28
  • PHP批量生成图片缩略图(1/5)

    这款批量生成缩略图代码可以生成指定大小的小图哦,并且支持文件批量上传。 这款教程会用到php文件 view.php config.php funs.php index.php 功能: -------...2016-11-25
  • C#实现为一张大尺寸图片创建缩略图的方法

    这篇文章主要介绍了C#实现为一张大尺寸图片创建缩略图的方法,涉及C#创建缩略图的相关图片操作技巧,需要的朋友可以参考下...2020-06-25
  • 史上最简洁C# 生成条形码图片思路及示例分享

    这篇文章主要介绍了史上最简洁C# 生成条形码图片思路及示例分享,需要的朋友可以参考下...2020-06-25
  • php 上传文件并生成缩略图代码

    if( isset($_FILES['upImg']) ) { if( $userGroup[$loginArr['group']]['upload'] == 0 ) { echo '{"error":"您所在的用户组无权上传图片!"}'; } else...2016-11-25
  • 简单入门级php 生成xml文档代码

    $doc = new domdocument('1.0'); // we want a nice output $doc->formatoutput = true; 代码如下 复制代码 $root = $doc->createelement('bo...2016-11-25