澳门新葡亰娱乐官网几个PHP技巧

我常用的几个类修改自hk的PHP代码:——————————————————————————–/*作用:取得随机字符串参数:
1、(int)$length = 32 #随机字符长度,默认为32 2、(int)$mode = 0
#随机字符类型,0为大小写英文和数字,1为数字,2为小写子木,3为大写字母,4为大小写字母,5为大写字母和数字,6为小写字母和数字返回:取得的字符串使用:
$code = new activeCodeObj; $str = $code-getCode($length, $mode);*/class
activeCodeObj{ function getCode ($length = 32, $mode = 0) { switch
($mode) { case ‘1’: $str = ‘1234567890’; break; case ‘2’: $str =
‘abcdefghijklmnopqrstuvwxyz’; break; case ‘3’: $str =
‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’; break; case ‘4’: $str =
‘ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz’; break; case ‘5’:
$str = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890’; break; case ‘6’: $str =
‘abcdefghijklmnopqrstuvwxyz1234567890’; break; default: $str =
‘ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890’; break;
} $result = ”; $l = strlen($str); for($i = 0;$i $length;$i ++){ $num =
rand(0, $l); $result .= $str[$num]; } return $result;
}}PHP代码:——————————————————————————–/*作用:取得客户端信息参数:返回:指定的资料使用:
$code = new clientGetObj; 1、浏览器:$str = $code-getBrowse();
2、IP地址:$str = $code-getIP(); 4、操作系统:$str =
$code-getOS();*/class clientGetObj{ function getBrowse() { global
$_SERVER; $Agent = $_SERVER[‘HTTP_USER_AGENT’]; $browser = ”;
$browserver = ”; $Browser = array(‘Lynx’, ‘MOSAIC’, ‘AOL’, ‘Opera’,
‘JAVA’, ‘MacWeb’, ‘WebExplorer’, ‘OmniWeb’); for($i = 0; $i = 7; $i ++){
if(strpos($Agent, $Browsers[$i])){ $browser = $Browsers[$i];
$browserver = ”; } } if(ereg(‘Mozilla’, $Agent) && !ereg(‘MSIE’,
$Agent)){ $temp = explode(‘(‘, $Agent); $Part = $temp[0]; $temp =
explode(‘/’, $Part); $browserver = $temp[1]; $temp = explode(‘ ‘,
$browserver); $browserver = $temp[0]; $browserver =
preg_replace(‘/([d.]+)/’, ‘/1’, $browserver); $browserver =
$browserver; $browser = ‘Netscape Navigator’; } if(ereg(‘Mozilla’,
$Agent) && ereg(‘Opera’, $Agent)) { $temp = explode(‘(‘, $Agent); $Part
= $temp[1]; $temp = explode(‘)’, $Part); $browserver = $temp[1];
$temp = explode(‘ ‘, $browserver); $browserver = $temp[2]; $browserver
= preg_replace(‘/([d.]+)/’, ‘/1’, $browserver); $browserver =
$browserver; $browser = ‘Opera’; } if(ereg(‘Mozilla’, $Agent) &&
ereg(‘MSIE’, $Agent)){ $temp = explode(‘(‘, $Agent); $Part = $temp[1];
$temp = explode(‘;’, $Part); $Part = $temp[1]; $temp = explode(‘ ‘,
$Part); $browserver = $temp[2]; $browserver =
preg_replace(‘/([d.]+)/’,’/1′,$browserver); $browserver =
$browserver; $browser = ‘Internet Explorer’; } if($browser != ”){
$browseinfo = $browser.’ ‘.$browserver; } else { $browseinfo = false; }
return $browseinfo; } function getIP () { global $_SERVER; if
(getenv(‘HTTP_CLIENT_IP’)) { $ip = getenv(‘HTTP_CLIENT_IP’); } else
if (getenv(‘HTTP_X_FORWARDED_FOR’)) { $ip =
getenv(‘HTTP_X_FORWARDED_FOR’); } else if (getenv(‘REMOTE_ADDR’)) {
$ip = getenv(‘REMOTE_ADDR’); } else { $ip =
$_SERVER[‘REMOTE_ADDR’]; } return $ip; } function getOS () { global
$_SERVER; $agent = $_SERVER[‘HTTP_USER_AGENT’]; $os = false; if
(eregi(‘win’, $agent) && strpos($agent, ’95’)){ $os = ‘Windows 95’; }
else if (eregi(‘win 9x’, $agent) && strpos($agent, ‘4.90’)){ $os =
‘Windows ME’; } else if (eregi(‘win’, $agent) && ereg(’98’, $agent)){
$os = ‘Windows 98’; } else if (eregi(‘win’, $agent) && eregi(‘nt 5.1’,
$agent)){ $os = ‘Windows XP’; } else if (eregi(‘win’, $agent) &&
eregi(‘nt 5’, $agent)){ $os = ‘Windows 2000’; } else if (eregi(‘win’,
$agent) && eregi(‘nt’, $agent)){ $os = ‘Windows NT’; } else if
(eregi(‘win’, $agent) && ereg(’32’, $agent)){ $os = ‘Windows 32’; } else
if (eregi(‘linux’, $agent)){ $os = ‘Linux’; } else if (eregi(‘unix’,
$agent)){ $os = ‘Unix’; } else if (eregi(‘sun’, $agent) && eregi(‘os’,
$agent)){ $os = ‘SunOS’; } else if (eregi(‘ibm’, $agent) && eregi(‘os’,
$agent)){ $os = ‘IBM OS/2’; } else if (eregi(‘Mac’, $agent) &&
eregi(‘PC’, $agent)){ $os = ‘Macintosh’; } else if (eregi(‘PowerPC’,
$agent)){ $os = ‘PowerPC’; } else if (eregi(‘AIX’, $agent)){ $os =
‘AIX’; } else if (eregi(‘HPUX’, $agent)){ $os = ‘HPUX’; } else if
(eregi(‘NetBSD’, $agent)){ $os = ‘NetBSD’; } else if (eregi(‘BSD’,
$agent)){ $os = ‘BSD’; } else if (ereg(‘OSF1’, $agent)){ $os = ‘OSF1’; }
else if (ereg(‘IRIX’, $agent)){ $os = ‘IRIX’; } else if
(eregi(‘FreeBSD’, $agent)){ $os = ‘FreeBSD’; } else if
(eregi(‘teleport’, $agent)){ $os = ‘teleport’; } else if
(eregi(‘flashget’, $agent)){ $os = ‘flashget’; } else if
(eregi(‘webzip’, $agent)){ $os = ‘webzip’; } else if (eregi(‘offline’,
$agent)){ $os = ‘offline’; } else { $os = ‘Unknown’; } return $os;
}}PHP代码:——————————————————————————–class
cnStrObj{ function substrGB ($str = ”, $start = ”, $len = ”){
if($start == 0 $start == ”){ $start = 1; } if($str == ” $len == ”){
return false; } for($i = 0; $i $start + $len; $i ++){ $tmpstr =
(ord($str[$i]) = 161 && ord($str[$i]) = 247&& ord($str[$i+1]) =
161 && ord($str[$i+1]) = 254)?$str[$i].$str[++$i]:$tmpstr =
$str[$i]; if ($i = $start && $i ($start + $len)) { $tmp .=$tmpstr; } }
return $tmp; } function isGB ($str) { $strLen = strlen($str); $length =
1; for($i = 0; $i $strLen; $i ++) { $tmpstr = ord(substr($str, $i, 1));
$tmpstr2 = ord(substr($str, $i+1, 1)); if(($tmpstr = 161 $tmpstr = 247)
&& ($tmpstr2 = 161 $tmpstr2 = 247)){ $legalflag = false; } else {
$legalflag = true; } } return $legalflag;
}}PHP代码:——————————————————————————–?php/*****************************************
Filename…….: class.smtp.inc** Project……..: SMTP Class**
Version……..: 1.00b** Last Modified..: 30 September
2001***************************************/
define(‘SMTP_STATUS_NOT_CONNECTED’, 1, TRUE);
define(‘SMTP_STATUS_CONNECTED’, 2, TRUE); class smtp{ var $connection;
var $recipients; var $headers; var $timeout; var $errors; var $status;
var $body; var $from; var $host; var $port; var $helo; var $auth; var
$user; var $pass;
/***************************************
** Constructor function. Arguments: ** $params – An assoc array of
parameters: ** ** host – The hostname of the smtp server Default:
localhost ** port – The port the smtp server runs on Default: 25 **
helo – What to send as the HELO command Default: localhost **
(typically the hostname of the ** machine this script runs on) **
auth – Whether to use basic authentication Default: FALSE ** user –
Username for authentication Default: blank ** pass – Password for
authentication Default: blank ** timeout – The timeout in seconds for
the call Default: 5 ** to fsockopen()
***************************************/
function smtp($params = array()){ if(!defined(‘CRLF’)) define(‘CRLF’,
“/r/n”, TRUE); $this-timeout = 5; $this-status =
SMTP_STATUS_NOT_CONNECTED; $this-host = ‘localhost’; $this-port = 25;
$this-helo = ‘localhost’; $this-auth = FALSE; $this-user = ”;
$this-pass = ”; $this-errors = array(); foreach($params as $key =
$value){ $this-$key = $value; } }
/***************************************
** Connect function. This will, when called ** statically, create a
new smtp object, ** call the connect function (ie this function) **
and return it. When not called statically, ** it will connect to the
server and send ** the HELO command.
***************************************/
function connect($params = array()){ if(!isset($this-status)){ $obj =
new smtp($params); if($obj-connect()){ $obj-status =
SMTP_STATUS_CONNECTED; } return $obj; }else{ $this-connection =
fsockopen($this-host, $this-port, $errno, $errstr, $this-timeout);
socket_set_timeout($this-connection, 0, 250000); $greeting =
$this-get_data(); if(is_resource($this-connection)){ return $this-auth
? $this-ehlo() : $this-helo(); }else{ $this-errors[] = ‘Failed to
connect to server: ‘.$errstr; return FALSE; } } }
/***************************************
** Function which handles sending the mail. ** Arguments: **
$params – Optional assoc array of parameters. ** Can contain: **
recipients – Indexed array of recipients ** from – The from address.
(used in MAIL FROMimg src=”images/smilies/smile.gif” alt=””, ** this
will be the return path ** headers – Indexed array of headers, one
header per array entry ** body – The body of the email ** It can
also contain any of the parameters from the connect() ** function
***************************************/
function send($params = array()){ foreach($params as $key = $value){
$this-set($key, $value); } if($this-is_connected()){ // Do we auth or
not? Note the distinction between the auth variable and auth() function
if($this-auth){ if(!$this-auth()) return FALSE; }
$this-mail($this-from); if(is_array($this-recipients))
foreach($this-recipients as $value) $this-rcpt($value); else
$this-rcpt($this-recipients); if(!$this-data()) return FALSE; //
Transparency $headers = str_replace(CRLF.’.’, CRLF.’..’,
trim(implode(CRLF, $this-headers))); $body = str_replace(CRLF.’.’,
CRLF.’..’, $this-body); $body = $body[0] == ‘.’ ? ‘.’.$body : $body;
$this-send_data($headers); $this-send_data(”);
$this-send_data($body); $this-send_data(‘.’); return
(substr(trim($this-get_data()), 0, 3) === ‘250’); }else{
$this-errors[] = ‘Not connected!’; return FALSE; } }
/***************************************
** Function to implement HELO cmd
***************************************/
function helo(){ if(is_resource($this-connection) AND
$this-send_data(‘HELO ‘.$this-helo) AND substr(trim($error =
$this-get_data()), 0, 3) === ‘250’ ){ return TRUE; }else{
$this-errors[] = ‘HELO command failed, output: ‘ .
trim(substr(trim($error),3)); return FALSE; } }
/***************************************
** Function to implement EHLO cmd
***************************************/
function ehlo(){ if(is_resource($this-connection) AND
$this-send_data(‘EHLO ‘.$this-helo) AND substr(trim($error =
$this-get_data()), 0, 3) === ‘250’ ){ return TRUE; }else{
$this-errors[] = ‘EHLO command failed, output: ‘ .
trim(substr(trim($error),3)); return FALSE; } }
/***************************************
** Function to implement AUTH cmd
***************************************/
function auth(){ if(is_resource($this-connection) AND
$this-send_data(‘AUTH LOGIN’) AND substr(trim($error =
$this-get_data()), 0, 3) === ‘334’ AND
$this-send_data(base64_encode($this-user)) // Send username AND
substr(trim($error = $this-get_data()),0,3) === ‘334’ AND
$this-send_data(base64_encode($this-pass)) // Send password AND
substr(trim($error = $this-get_data()),0,3) === ‘235’ ){ return TRUE;
}else{ $this-errors[] = ‘AUTH command failed: ‘ .
trim(substr(trim($error),3)); return FALSE; } }
/***************************************
** Function that handles the MAIL FROM: cmd
***************************************/
function mail($from){ if($this-is_connected() AND
$this-send_data(‘MAIL FROM:’.$from.”) AND
substr(trim($this-get_data()), 0, 2) === ‘250’ ){ return TRUE; }else
return FALSE; }
/***************************************
** Function that handles the RCPT TO: cmd
***************************************/
function rcpt($to){ if($this-is_connected() AND $this-send_data(‘RCPT
TO:’.$to.”) AND substr(trim($error = $this-get_data()), 0, 2) === ’25’
){ return TRUE; }else{ $this-errors[] = trim(substr(trim($error), 3));
return FALSE; } }
/***************************************
** Function that sends the DATA cmd
***************************************/
function data(){ if($this-is_connected() AND $this-send_data(‘DATA’)
AND substr(trim($error = $this-get_data()), 0, 3) === ‘354’ ){ return
TRUE; }else{ $this-errors[] = trim(substr(trim($error), 3)); return
FALSE; } }
/***************************************
** Function to determine if this object ** is connected to the
server or not.
***************************************/
function is_connected(){ return (is_resource($this-connection) AND
($this-status === SMTP_STATUS_CONNECTED)); }
/***************************************
** Function to send a bit of data
***************************************/
function send_data($data){ if(is_resource($this-connection)){ return
fwrite($this-connection, $data.CRLF, strlen($data)+2); }else return
FALSE; }
/***************************************
** Function to get data.
***************************************/
function &get_data(){ $return = ”; $line = ”;
if(is_resource($this-connection)){ while(strpos($return, CRLF) ===
FALSE OR substr($line,3,1) !== ‘ ‘){ $line = fgets($this-connection,
512); $return .= $line; } return $return; }else return FALSE; }
/***************************************
** Sets a variable
***************************************/
function set($var, $value){ $this-$var = $value; return TRUE; } } // End
of class?用 PHP 动态创建 Flash 动画 (Rate:) 作者: unknow 发布时间:
2002-7-11 文章类型: 转载 阅读次数: 124次 来自: unknow Macromedia
公司出品的 Flash
动画软件现已经成为Web页面上非常流行的表现工具,网站开发者利用它引起浏览者的兴趣。然而不幸的是,仅仅使用ActionScript创建动画受到很大的限制,Macromedia已经宣布,打算放弃Flash
Generator产品,转而采用支持Flash MX的Cold
Fusion,我们的网站将向何处去呢?现在,我们可以利用Ming
PHP库来轻松地动态创建Flash动画,并且和我们的代码无缝集成。我们可以根据数据库里的数据创建出各种不同效果的动画。Ming
动画库最初出现在PHP4.05版本里,替代了以前版本的LibSwf模块。Ming
库采用C编写,支持多种语言,下面先看一下如何利用PHP来制作动画。该库使用简单,和
PHP
紧密集成,但是,该库仍然处于实验阶段,目前的版本是0.2a,在线的教程、例子、和帮助手册可以让我们方便地学习,Ming里的函数组织的很有条理,方便PHP和Flash开发者查找。使用
PHP和Ming库,不但让我们的网站有华丽的装饰,而且可以减少开发Flash动画的费用和繁复的劳动。使用Ming库有两种方式,我们可以内嵌到PHP里,也可以把它作为一个PHP模块来运行,里面的函数支持所有的平台,使用时也无需实例化。如果我们把Ming库作为PHP模块来运行的话,我们必须明确地调用Ming库,和使用其他模块一样,然后使用该库里的函数。由于使用前必须先加载模块,与把Ming作为内部函数编译的方式相比,要有一点性能的下降。Ming库是完全免费的,我们可以到创作者的网站下载,地址是:[url][/url],该网站….php.net/ming。一旦我们正确安装和配置了Ming库,我们可以创建一个PHP对象,从PHP里调用Ming的函数,通过调用函数和属性,就可以定义我们的动画了。在PHP模块里有13个对象,提供了Flash的一些功能,也有几个命令可以来控制发行时的参数设定。下面就看看如何利用它来创建动画。使用Macromedia
Flash创建SWF格式的动画,我们先创建一些符号,Flash有三种类型的符号:图形、动画剪辑、按钮。一旦我们创建了这些符号,我们就可以把它们复制到场景里,每一个拷贝称为一个实例,可以放任意多的实例到我们的场景里。接下来就可以定义这些对象的行为了,也就是定义动作和运动轨迹,也可以定义动画的参数,如尺寸大小和背景颜色,如果需要,可以保存成.SWF文件。利用PHP的Ming库创建Flash动画,和Macromedia
Flash一样,必须先创建一些符号,这些符号就是PHP对象的实例,然后定义这些对象在动画场景里的位置和相互关系,接着定义对象在每一帧里的动作,最后定义动画自己。我们可以直接把SWF直接输出到浏览器,也可以保存成SWF格式的文件,以备后用。Flash的优点就是图形化的用户接口,利用Ming库不但可以更加简单的控制对象,而且具有无限的扩展性和再用性。下面我们就用一个完整的例子来看看如何使用Ming库:?php/*
首先创建一个符号,并填充颜色 */$square = new SWFShape();$sqfill =
$square-addFill(0, 0, 0xff);$square-setRightFill($sqfill);
$square-movePenTo(-250,-250);$square-drawLineTo(250,-250);$square-drawLineTo(250,250);$square-drawLineTo(-250,250);$square-drawLineTo(-250,-250);
/* 在动画剪辑里使用上面的符号,并添加一些脚本 */$sqclip = new
SWFSprite();$i =
$sqclip-add($square);$i-setDepth(1);$sqclip-setframes(25);$sqclip-add(new
SWFAction(“stop();”)); $sqclip-nextFrame();$sqclip-add(new
SWFAction(“play();”)); for($n=0; $n24; $n++)
{$i-rotate(-15);$sqclip-nextFrame();}/* 下面创建按钮 */function
rect($r, $g, $b) {$s = new SWFShape();$s-setRightFill($s-addFill($r, $g,
$b));$s-drawLine(500,0);$s-drawLine(0,500);$s-drawLine(-500,0);$s-drawLine(0,-500);return
$s;}$b = new SWFButton();$b-addShape(rect(0xff, 0, 0), SWFBUTTON_UP |
SWFBUTTON_HIT);$b-addShape(rect(0, 0xff, 0),
SWFBUTTON_OVER);$b-addShape(rect(0, 0, 0xff), SWFBUTTON_DOWN);
$b-addAction(new SWFAction(“setTarget(‘/box’); gotoandplay(2);”),
SWFBUTTON_MOUSEDOWN);/* 下面创建动画,并添加上面的符号和按钮 */$m =
new SWFMovie();$m-setDimension(4000,3000);$i =
$m-add($sqclip);$i-setDepth(3);$i-moveTo(1650, 400);$i-setName(“box”);$i
= $m-add($b);$i-setDepth(2);$i-moveTo(1400,900);/*
最后,我们把它输出到浏览器 */header(‘Content-type:
application/x-shockwave-flash’);$m-output();?

1、关于PHP重定向
方法一:header(“Location: index.php”);
方法二:echo “<script>window.location
=”$PHP_SELF”;</script>”;
方法三:echo “<META HTTP-EQUIV=”Refresh” CONTENT=”0;
URL=index.php”>”;

2、获取访问者浏览器
function browse_infor()
{
$browser=””;$browserver=””;
$Browsers
=array(“Lynx”,”MOSAIC”,”AOL”,”Opera”,”JAVA”,”MacWeb”,”WebExplorer”,”OmniWeb”);
$Agent = $GLOBALS[“HTTP_USER_AGENT”];
for ($i=0; $i<=7; $i )
{
if (strpos($Agent,$Browsers[$i]))
{
$browser = $Browsers[$i];
$browserver =””;
}
}
if (ereg(“Mozilla”,$Agent) && !ereg(“MSIE”,$Agent))
{
$temp =explode(“(“, $Agent); $Part=$temp[0];
$temp =explode(“/”, $Part); $browserver=$temp[1];
$temp =explode(” “,$browserver); $browserver=$temp[0];
$browserver =preg_replace(“/([d.] )/”,”1″,$browserver);
$browserver = ” $browserver”;
$browser = “Netscape Navigator”;
}
if (ereg(“Mozilla”,$Agent) && ereg(“Opera”,$Agent))
{
$temp =explode(“(“, $Agent); $Part=$temp[1];
$temp =explode(“)”, $Part); $browserver=$temp[1];
$temp =explode(” “,$browserver);$browserver=$temp[2];
$browserver =preg_replace(“/([d.] )/”,”1″,$browserver);
$browserver = ” $browserver”;
$browser = “Opera”;
}
if (ereg(“Mozilla”,$Agent) && ereg(“MSIE”,$Agent))
{
$temp = explode(“(“, $Agent); $Part=$temp[1];
$temp = explode(“;”,$Part); $Part=$temp[1];
$temp = explode(” “,$Part);$browserver=$temp[2];
$browserver =preg_replace(“/([d.] )/”,”1″,$browserver);
$browserver = ” $browserver”;
$browser = “Internet Explorer”;
}
if ($browser!=””)
{
$browseinfo = “$browser$browserver”;
}
else
{
$browseinfo = “Unknown”;
}
return $browseinfo;
}
//调用方法$browser=browseinfo() ;直接返回结果

3、获取访问者操作系统
function osinfo() {
$os=””;
$Agent = $GLOBALS[“HTTP_USER_AGENT”];
if (eregi(‘win’,$Agent) && strpos($Agent, ’95’)) {
$os=”Windows 95″;
}
elseif (eregi(‘win 9x’,$Agent) && strpos($Agent, ‘4.90’)) {
$os=”Windows ME”;
}
elseif (eregi(‘win’,$Agent) && ereg(’98’,$Agent)) {
$os=”Windows 98″;
}
elseif (eregi(‘win’,$Agent) && eregi(‘nt 5.0’,$Agent)) {
$os=”Windows 2000″;
}
elseif (eregi(‘win’,$Agent) && eregi(‘nt’,$Agent)) {

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图