php上传图片并给图片打上透明水印

 更新时间:2016年11月25日 15:55  点击:2129
 代码如下 复制代码
$im = imagecreatefromjpeg($_file["upload"]["tmp_name"]); //你要打水例子的图片
$watermark = imagecreatefrompng("Smiley.png"); //水印图的路径
$im_x = imagesx($im);
$im_y = imagesy($im);
$w_x = imagesx($watermark);
$w_y = imagesy($watermark);
imagecopy($im,$watermark ,$im_x-$w_x,$im_y-$w_y,0,0,$w_x,$w_y);
imagejpeg($im); //可加上路径以保存有水印的图
//可以利用type判断下图片类型
//switch($_file["upload"]["type"])
//case:1
//然后用不同的函数
//imagejpeg()对应jpeg
//imagegif()对应gif
//imagepng()对应png
imagedestroy($im);

<?
if(!$UploadAction):
?>

 代码如下 复制代码

<HTML>
<HEAD>
<TITLE>文件上载界面</TITLE>
</HEAD>
<BODY>

<table>
<tr align="center">
<td><form ENCTYPE="multipart/form-data" NAME="SubmitForm" ACTION="upload.php教程" METHOD="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000"><input type="hidden" name="UploadAction" value="1">
</td></tr>
<tr align="center">
<td><input NAME="UploadFile" TYPE="file" SIZE="30"></td>
</tr>
<tr align="center">
<td><input NAME="submit" VALUE="提交www.111cn.net" TYPE="submit"></td>
<td><input NAME="reset" VALUE="重置" TYPE="reset"></td>
</tr>
</form>
</table>
</center>
</BODY>
</HTML>

<?
else:
?>

<HTML>
<HEAD>
<TITLE>文件上载代码</TITLE>
</HEAD>
<BODY>

 代码如下 复制代码

<?
$UploadAction=0;
echo "Good!";
$TimeLimit=60; /*设置超时限制时间 缺省时间为30秒 设置为0时为不限时 */
set_time_limit($TimeLimit);

If(($UploadFile !="none" ))
{  
    $UploadPath=AddSlashes(dirname($PATH_TRANSLATED))."\www.111cn.net\"; //上载文件存放路径

    $FileName=$UploadPath.$UploadFile_name; //上载文件名

    if($UploadFile_size < 1024) //上载文件大小
    {
  $FileSize=(string)$UploadFile_size." 字节"; 
 }
     elseif ($UploadFile_size <(1024 * 1024))
     {
  $FileSize=number_format((double)($UploadFile_size/1024), 1) . " KB";
     }
  else{
  $FileSize=number_format((double)($UploadFile_size / (1024 * 1024)), 1) . " MB";
     }
   
    if(!file_exists($FileName))
    {
         if(copy($UploadFile,$FileName))
         {  echo "文件 $UploadFile_name ($FileSize)上载成功!"; }
         else
         { echo "文件 $UploadFile_name上载失败!"; }

         unlink($UploadFile);
    }
    else
    { echo "文件 $UploadFile_name已经存在!"; }
}
else
{ echo "你没有选择任何文件上载!"; }

set_time_limit(30); //恢复缺省超时设置

?>

<BR><A HREF = "upload.php">返回</A>

</BODY>
</HTML>

<?
endif;
?>

$tmpBody = "fjka;fjsa;{page}批量生成分成文件并且加上分页代码";
    
    $tmpUrl = 'www.111cn.net';
    $tmpUrlarray = explode('.',$url);
    
    $tmpArray = explode('{page}',$tmpBody);
    $total = count($tmpArray);
    
    if( $total >1 )
    {
     $tmpStr = '';
     for( $i=0;$i<$total;$i++ ) //遍历所有分页
     {      
      if( $i==0 )
      {      
       $str .="<a href=".$rs['s_url'].' class=bodypage target=_self>'.($i+1).'</a> ';
      }
      else
      {
       $str .="<a href=".$rs['id'].'_'.$i.'.htm class=bodypage target=_self>'.($i+1).'</a> ';
      }      
     }     
     //批量生成分成文件并且加上分页代码
     
     $str = '<div class=mupage>'.$str.'</div>';    
     for( $j=0;$j<$total;$j++ )
     {
      
      if( $j==0 )
      {      
       $fname =$rs['id'].'.htm';
      }
      else
      {
       $fname =$rs['id'].'_'.$j.'.htm';
      }      
      $tempMu = str_replace('{htmlContent}',$tmpArray[$j].$str,$tempLate);   
      makeHtml($tempMu,$filePath,$fname); //这个函数就不说明了,一个创建文件的代码
     }
     $mupage =1;
     
    }
    
    $tempLate = str_replace('{htmlContent}',$tmpBody,$tempLate); //普通文章 以{page}分页取出保存到一个数组再生成分页地址,然后再由根据explode分的数组的内容生成htm 页面,本站原创教程转载注明来源www.111cn.net   
    $total=0;
    $str='';
    $i=0;
    $j=0;
    /*
    本段代码生成的原理是id_分页号如100_1.htm,100_2.htm这样的形式,先是把
    */
    ?>

在php 5中,提供了构造函数,析构函数,对象克隆的方法,重载方法等,

1、构造函数__construct

如果在类申明中__construct函数,将被当成一个构造函数并且在对象建立时被执行,但在php4中,构造函数的名称与类名相同就是构造函数哦,这一点有一些不同。

2、析构函数__destruct

如果在php类中申明了,在对象被销毁时调用__destruct函数

下面来看个实例

 代码如下 复制代码
<?php
class Session
{
    public  function __construct()
{
     echo '构造函数执行';
    }
    public  function __destruct()
    {
      echo '析构函数执行';
    }
}
$Obj = new Session;
unset($Obj);//删除对象, __destruct()会被调用的
//输出
//构造函数执行
/析构函数执行
?>

上面在使用new创建对象时就执行了__construct,对象结束时就执行了__destruct()

3、__clone()克隆函数

 代码如下 复制代码

<?php
class Session
{
 public $age = 20;
 public $sub = null;
 public function __clone()
 {
  $this->sub=clone $this->sub;
 }
}
class Session 2
{
 public $value=5;
}
$s   = new Session;
$s->sub=new Session 2;
$s2 = clone $s;
$s->sub->$value =10;
echo $s2->sub->$value;
?>

4  现在来看关于重载函数__get ,__set,__call函数

 代码如下 复制代码

<?php
class Session
{
 protected function __call($func,$para)
 {
  echo '方法不存在:’func." ".'参数为:'." ";
  print_r($para);
 }
}
$s=new Session ();
echo $c->getNames('hello','you');
/*
输出:
方法不存在:getNames
参数为:
Array
(
    [0] => hello
    [1] => you
)
*/
?>

申明本站原创文章转载注明来源于www.111cn.net

在php编程中类与函数一样是一个重要部份,类是变量与作用用于这些函数集合,需要用关键字class来定义类,类的定义包括类名,属性和方法,类名区分大小写,并且遵循php标识符规则,可以是包含字母,数字下画线等,但不能以数字开头。

看个实例

 代码如下 复制代码

<?php
class Cart
{
    var $items;  // 购物车中的项目
    // 把 $num 个 $artnr 放入车中
    function add_item ($artnr, $num)
    {
        $this->items[$artnr] += $num;
    }
    // 把 $num 个 $artnr 从车中取出
    function remove_item ($artnr, $num)
    {
        if ($this->items[$artnr] > $num) {
            $this->items[$artnr] -= $num;
            return true;
        } else {
            return false;
        }
    }
}
?>

上面这个类型是定义了一个名为class类,这是类由购物车构成的数组和两个用于从购物车中添加与删除商品函数组成的。

申明了类我们要看实例如何使用

创建对象,

 代码如下 复制代码

$obj111cn_.net = new Cart;

实例

 代码如下 复制代码

<?php
class Session
{
    public  function __construct()
{
     echo '构造函数执行';
    }
    public  function __destruct()
    {
      echo '析构函数执行';
    }
}
$Obj = new Session;
unset($Obj);//删除对象, __destruct()会被调用的
//输出
//构造函数执行
/析构函数执行
?>

$obj111cn_.net ->add_item(1,2);

这是调用类的属性与方法,

 代码如下 复制代码

<?php
class Session
{
 public $age = 20;
 public $sub = 'www.111cn.net';
 public function __clone()
 {
  $this->sub=clone $this->sub;
 }
}
class Session 2
{
 public $value=5;
}
$s   = new Session;
$s->sub=new Session 2;
$s2 = clone $s;
$s->sub->$value =10;
echo $s2->sub->$value;
?>

调用php类属性与方法实例二

 代码如下 复制代码

<?php
class Session
{
 public $age = 20;
 public $sub = '111cn.net';
 public function __clone()
 {
  $this->sub=clone $this->sub;
 }
}
class Session 2
{
 public $value=5;
}
$s   = new Session;
$s->sub=new Session 2;
$s2 = clone $s;
$s->sub->$value =10;
echo $s2->sub->$value;
?>

本站原创教程转载注明来源www.111cn.net

[!--infotagslink--]

相关文章

  • 使用PHP+JavaScript将HTML页面转换为图片的实例分享

    这篇文章主要介绍了使用PHP+JavaScript将HTML元素转换为图片的实例分享,文后结果的截图只能体现出替换的字体,也不能说将静态页面转为图片可以加快加载,只是这种做法比较interesting XD需要的朋友可以参考下...2016-04-19
  • C#从数据库读取图片并保存的两种方法

    这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
  • Photoshop古装美女图片转为工笔画效果制作教程

    今天小编在这里就来给各位Photoshop的这一款软件的使用者们来说说把古装美女图片转为细腻的工笔画效果的制作教程,各位想知道方法的使用者们,那么下面就快来跟着小编一...2016-09-14
  • Python 图片转数组,二进制互转操作

    这篇文章主要介绍了Python 图片转数组,二进制互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-09
  • php抓取网站图片并保存的实现方法

    php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了,喜欢编程的人总会喜欢制作一些简单有用的小软件,最近就参考了网上一个php抓取图片代码,封装了一个php远程抓取图片的类,测试了一下,效果还不错分享...2015-10-30
  • jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮

    jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮...2013-10-13
  • 利用JS实现点击按钮后图片自动切换的简单方法

    下面小编就为大家带来一篇利用JS实现点击按钮后图片自动切换的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-10-25
  • js实现上传图片及时预览

    这篇文章主要为大家详细介绍了js实现上传图片及时预览的相关资料,具有一定的参考价值,感兴趣的朋友可以参考一下...2016-05-09
  • Photoshop枪战电影海报图片制作教程

    Photoshop的这一款软件小编相信很多的人都已经是使用过了吧,那么今天小编在这里就给大家带来了用Photoshop软件制作枪战电影海报的教程,想知道制作步骤的玩家们,那么下面...2016-09-14
  • python opencv通过4坐标剪裁图片

    图片剪裁是常用的方法,那么如何通过4坐标剪裁图片,本文就详细的来介绍一下,感兴趣的小伙伴们可以参考一下...2021-06-04
  • 使用PHP下载CSS文件中的图片的代码

    共享一段使用PHP下载CSS文件中的图片的代码 复制代码 代码如下: <?php //note 设置PHP超时时间 set_time_limit(0); //note 取得样式文件内容 $styleFileContent = file_get_contents('images/style.css'); //not...2013-10-04
  • 微信小程序如何获取图片宽度与高度

    这篇文章主要给大家介绍了关于微信小程序如何获取图片宽度与高度的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-10
  • PHP swfupload图片上传的实例代码

    PHP代码如下:复制代码 代码如下:if (isset($_FILES["Filedata"]) || !is_uploaded_file($_FILES["Filedata"]["tmp_name"]) || $_FILES["Filedata"]["error"] != 0) { $upload_file = $_FILES['Filedata']; $fil...2013-10-04
  • C#中图片旋转和翻转(RotateFlipType)用法分析

    这篇文章主要介绍了C#中图片旋转和翻转(RotateFlipType)用法,实例分析了C#图片旋转及翻转Image.RotateFlip方法属性的常用设置技巧,需要的朋友可以参考下...2020-06-25
  • ps怎么制作图片阴影效果

    ps软件是现在很多人比较喜欢的,有着非常不错的使用效果,这次文章就给大家介绍下ps怎么制作图片阴影效果,还不知道制作方法的赶紧来看看。 ps图片阴影效果怎么做方法/...2017-07-06
  • OpenCV如何去除图片中的阴影的实现

    这篇文章主要介绍了OpenCV如何去除图片中的阴影的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-29
  • C#将图片和字节流互相转换并显示到页面上

    本文主要介绍用C#实现图片转换成字节流,字节流转换成图片,并根据图片路径返回图片的字节流,有需要的朋友可以参考下...2020-06-25
  • JavaScript 如何禁止用户保存图片

    这篇文章主要介绍了JavaScript 如何禁止用户保存图片,帮助大家完成需求,更好的理解和使用JavaScript,感兴趣的朋友可以了解下...2020-11-19
  • php上传图片学习笔记与心得

    我们在php中上传文件就必须使用#_FILE变量了,这个自动全局变量 $_FILES 从 PHP 4.1.0 版本开始被支持。在这之前,从 4.0.0 版本开始,PHP 支持 $HTTP_POST_FILES 数组。这...2016-11-25
  • JS实现图片的不间断连续滚动的简单实例

    下面小编就为大家带来一篇JS实现图片的不间断连续滚动的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-06-12