当前位置: 编程技术>php
本页文章导读:
▪php 图片操作类(图片加水印) 图片操作类的完整代码。
<?php
/*
$img = new Image('pic.jpg');
//$img->changeSize(80,50);//改变尺寸
$img->changeSize(80);//改变尺寸
$img->create();
$img->free();
$img = new Image('pic.jpg');
$img->ad.........
▪php mysql分页基础代码学习 php 分页代码。
<?php
/**
#---------------
#获取序列ID
#---------------
*/
function getSequence() {
$sql = "update sequence set id=last_insert_id(id+1);";
$sql2= "select last_insert_id();";
global $dbuser,$dbpass,$host,$database,$.........
▪php取客户端MAC地址的代码 php代码获取客户端的MAC地址,供大家学习参考。
<?
//取浏览器客户端的MAC地址
//by http://www.
class GetMacAddr
{
var $return_array = array(); // 返回带有MAC地址的字符串数组
var $mac_addr=a.........
[1]php 图片操作类(图片加水印)
来源: 互联网 发布时间: 2013-12-24
图片操作类的完整代码。
<?php
/*
$img = new Image('pic.jpg');
//$img->changeSize(80,50);//改变尺寸
$img->changeSize(80);//改变尺寸
$img->create();
$img->free();
$img = new Image('pic.jpg');
$img->addWatermark('logo.jpg', 50); //添加水印,第一个参数是水印的图片地址,第二个参数是透明值
$img->create();
$img->free();
site http://www.
*/
class Image {
var $imageResource = NULL;
var $target = NULL;
var $enableTypes = array();
var $imageInfo = array();
var $createFunc = '';
var $imageType = NULL;
/* Construct for this class
* @param string $image
* @return Image
*/
function Image($image = NULL) {
//get enables
if(imagetypes() & IMG_GIF) {
$this->enableTypes[] = 'image/gif';
}
if(imagetypes() & IMG_JPEG) {
$this->enableTypes[] = 'image/jpeg';
}
if (imagetypes() & IMG_JPG) {
$this->enableTypes[] = 'image/jpg';
}
if(imagetypes() & IMG_PNG) {
$this->enableTypes[] = 'image/png';
}
//end get
if($image != NULL) {
$this->setImage($image);
}
}
/* set a image resource
* @param string $image
* @return boolean
*/
function setImage($image) {
if(file_exists($image) && is_file($image)) {
$this->imageInfo = getimagesize($image);
$img_mime = strtolower()($this->imageInfo['mime']);
if(!in_array($img_mime, $this->enableTypes)) {
exit('系统不能操作这种图片类型.');
}
switch ($img_mime) {
case 'image/gif':
$link = imagecreatefromgif($image);
$this->createFunc = 'imagegif';
$this->imageType = 'gif';
break;
case 'image/jpeg':
case 'image/jpg':
$link = imagecreatefromjpeg($image);
$this->createFunc = 'imagejpeg';
$this->imageType = 'jpeg';
break;
case 'image/png':
$link = imagecreatefrompng($image);
$this->createFunc = 'imagepng';
$this->imageType = 'png';
break;
default:
$link = 'unknow';
$this->imageType = 'unknow';
break;
}
if($link !== 'unknow') {
$this->imageResource = $link;
} else {
exit('这种图片类型不能改变尺寸.');
}
unset($link);
return true;
} else {
return false;
}
}
/*set header*/
function setHeader() {
switch ($this->imageType) {
case 'gif':
header('content-type:image/gif');
break;
case 'jpeg':
header('content-type:image/jpeg');
break;
case 'png':
header('content-type:image/png');
break;
default:
exit('Can not set header.');
break;
}
return true;
}
/* change the image size
* @param int $width
* @param int $height
* @return boolean
*/
function changeSize($width, $height = -1) {
if(!is_resource($this->imageResource)) {
exit('不能改变图片的尺寸,可能是你没有设置图片来源.');
}
$s_width = $this->imageInfo[0];
$s_height = $this->imageInfo[1];
$width = intval($width);
$height = intval($height);
if($width <= 0) exit('图片宽度必须大于零.');
if($height <= 0) {
$height = ($s_height / $s_width) * $width;
}
$this->target = imagecreatetruecolor($width, $height);
if(@imagecopyresized($this->target, $this->imageResource, 0, 0, 0, 0, $width, $height, $s_width, $s_height))
return true;
else
return false;
}
/* Add watermark
* @param string $image
* @param int $app
*/
function addWatermark($image, $app = 50) {
if(file_exists($image) && is_file($image)) {
$s_info = getimagesize($image);
} else {
exit($image . '文件不存在.');
}
$r_width = $s_info[0];
$r_height = $s_info[1];
if($r_width > $this->imageInfo[0]) exit('水印图片必须小于目标图片');
if($r_height > $this->imageInfo[1]) exit('水印图片必须小于目标图片');
switch ($s_info['mime']) {
case 'image/gif':
$resource = imagecreatefromgif($image);
break;
case 'image/jpeg':
case 'image/jpg':
$resource = imagecreatefromjpeg($image);
break;
case 'image/png':
$resource = imagecreatefrompng($image);
break;
default:
exit($s_info['mime'] .'类型不能作为水印来源.');
break;
}
$this->target = &$this->imageResource;
imagecopymerge($this->target, $resource, $this->imageInfo[0] - $r_width - 5,
$this->imageInfo[1] - $r_height - 5, 0,0 ,$r_width, $r_height, $app);
imagedestroy($resource);
unset($resource);
}
/* create image
* @param string $name
* @return boolean
*/
function create($name = NULL) {
$function = $this->createFunc;
if($this->target != NULL && is_resource($this->target)) {
if($name != NULL) {
$function($this->target, $name);
} else {
$function($this->target);
}
return true;
} else if($this->imageResource != NULL && is_resource($this->imageResource)) {
if($name != NULL) {
$function($this->imageResource, $name);
} else {
$function($this->imageResource);
}
return true;
} else {
exit('不能创建图片,原因可能是没有设置图片来源.');
}
}
/*free resource*/
function free() {
if(is_resource($this->imageResource)) {
@imagedestroy($this->imageResource);
}
if(is_resource($this->target)) {
@imagedestroy($this->target);
}
}
}
?>
您可能感兴趣的文章:
超级好用的php文件上传类(上传、缩略图、水印)
一个加强版的php水印代码
php图片加水印与上传图片加水印类
php为图片加中文水印的代码
php上传图片并打上透明水印的代码
php上传文件并添加文字与图片水印的代码
php 上传图片加水印且支持透明的代码
[2]php mysql分页基础代码学习
来源: 互联网 发布时间: 2013-12-24
php 分页代码。
<?php
/**
#---------------
#获取序列ID
#---------------
*/
function getSequence() {
$sql = "update sequence set id=last_insert_id(id+1);";
$sql2= "select last_insert_id();";
global $dbuser,$dbpass,$host,$database,$printsql;
$link = mysql_connect()($host,$dbuser,$dbpass);
if(! $link){
return mysql_error();
}
mysql_select_db($database);
mysql_query()("SET NAMES UTF8");
if($printsql) echo "<hr/>".$sql."<hr/>";
mysql_query($sql);
if($printsql) echo "<hr/>".$sql2."<hr/>";
$result = mysql_query($sql2);
if(mysql_num_rows($result)==0){
mysql_close($link);
return "";
}
$myrow = mysql_fetch_row($result);
$ret=$myrow[0];
mysql_close($link);
return $ret;
}
#---------------
#获取strSql第N条记录中的第N列数据,下标从1开始
#---------------
function getData($strsql,$row,$col) {
global $dbuser,$dbpass,$host,$database,$printsql;
$link = mysql_connect($host,$dbuser,$dbpass);
if(! $link){
return mysql_error();
}
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
if($printsql) echo "<hr/>".$strsql."<hr/>";
$result = mysql_query($strsql);
if(mysql_num_rows($result)==0){
mysql_close($link);
return "";
}
$i=0;
while($myrow = mysql_fetch_row($result)){
if($i==$row-1){
$ret=$myrow[$col-1];
break;
}
$i=$i+1;
}
mysql_close($link);
return $ret;
}
#---------------
#获取strSql第N条记录
#---------------
function getRowData($strsql,$row) {
global $dbuser,$dbpass,$host,$database,$printsql;
$link = mysql_connect($host,$dbuser,$dbpass);
if(! $link){
return mysql_error();
}
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
if($printsql) echo "<hr/>".$strsql."<hr/>";
$result = mysql_query($strsql);
if(mysql_num_rows($result)==0){
mysql_close($link);
return "";
}
$i=0;
while($myrow = mysql_fetch_array($result)){
if($i==$row-1){
$ret=$myrow;
break;
}
$i=$i+1;
}
mysql_close($link);
return $ret;
}
#---------------
#获取strSql记录集存入数组中
#---------------
function getResultSetData($strsql) {
global $dbuser,$dbpass,$host,$database,$printsql;
$link = mysql_connect($host,$dbuser,$dbpass);
if(! $link){
return mysql
_error();
}
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
if($printsql) echo "<hr/>".$strsql."<hr/>";
$result = mysql_query($strsql);
if(mysql_num_rows($result)==0){
mysql_close($link);
return "";
}
while($myrow = mysql_fetch_array($result)){
$ret[]=$myrow;
}
mysql_close($link);
return $ret;
}
#---------------
#执行strSql
#---------------
function executeSql($strsql) {
global $dbuser,$dbpass,$host,$database,$printsql;
$link = mysql_connect($host,$dbuser,$dbpass);
if(! $link){
return mysql_error();
}
mysql_select_db($database);
mysql_query("SET NAMES UTF8");
if($printsql) echo "<hr/>".$strsql."<hr/>";
mysql_query($strsql);
$ret =mysql_affected_rows($link);
mysql_close($link);
return $ret;
}
/*
分页
*/
function Pager(&$curpage,&$pagesize,&$tsql,&$psql,&$totalpage,&$totalrow,&$pagerset){
$curpage=isset()($curpage)?intval($curpage):1;//当前页
$totalpage=0;//总页数
$totalrow=0;//总记录数
if($printsql) echo "<hr/>".$tsql."<hr/>";
if($curpage <= 0){
$curpage=1;
}
$totalrow=getData($tsql,1,1);//取得总记录数
$totalrow=strlen(totalrow)==0?0:$totalrow;
if($totalrow>0){
$totalpage=$totalrow%$pagesize==0?(int)($totalrow/$pagesize):(int)($totalrow/$pagesize)+1;
if($curpage>$totalpage){
$curpage=1;
}
$psql=$psql." limit ".(($curpage-1)*$pagesize).",".$pagesize;
if($printsql) echo "<hr/>".$psql."<hr/>";
$pagerset=getResultSetData($psql);//取得当前页记录
}
if($totalrow==0||$totalrow=="0"){ $curpage=1;}
}
?>
[3]php取客户端MAC地址的代码
来源: 互联网 发布时间: 2013-12-24
php代码获取客户端的MAC地址,供大家学习参考。
<?
//取浏览器客户端的MAC地址
//by http://www.
class GetMacAddr
{
var $return_array = array(); // 返回带有MAC地址的字符串数组
var $mac_addr=array();
function GetMacAddr()
{
switch (strtolower()(PHP_OS) )
{
case "linux":$this->forLinux();break;
case "solaris":break;
case "unix":break;
case "aix":break;
default:$this->forWindows();break;
}
$temp_array = array();
foreach ( $this->return_array as $value )
{
if ( preg_match( "/[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]".
"[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f]/i", $value, $temp_array ) )
{
$this->mac_addr[] = $temp_array[0];
}
}
unset($temp_array);
return $this->mac_addr;
}
function forWindows()
{
@exec("ipconfig /all", $this->return_array);
if ( $this->return_array )
return $this->return_array;
else{
$ipconfig = $_SERVER["WINDIR"]."\system32\ipconfig.exe";
if ( is_file($ipconfig) )
@exec($ipconfig." /all", $this->return_array);
else
@exec($_SERVER["WINDIR"]."\system\ipconfig.exe /all", $this->return_array);
return $this->return_array;
}
}
function forLinux()
{
@exec("ifconfig -a", $this->return_array);
return $this->return_array;
}
}
//调用示例
$mac = new GetMacAddr();
echo "<pre>";
print_r( $mac->mac_addr);
?>
2、获取客户端MAC(在同一个网关内有效)
<?php
function GetClientMac() {
$return_array = array();
$temp_array = array();
$mac_addr = "";
@exec("arp -a",$return_array);
foreach($return_array as $value) {
if(strPos($value,$_SERVER["REMOTE_ADDR"]) !== false && preg_match("/(:?[0-9a-f]{2}[:-]){5}[0-9a-f]{2}/i",$value,$temp_array)) {
$mac_addr = $temp_array[0];
break;
}
}
return ($mac_addr);
}
?>
您可能感兴趣的文章:
PHP获取MAC地址的实现代码
php获取电脑MAC地址的代码举例
php获取计算机唯一标识信息(cpu,网卡,MAC地址)
什么是MAC地址-基础知识
php获取网卡MAC地址与URL中主域
最新技术文章: