当前位置: 编程技术>php
本页文章导读:
▪php简单的会话类代码
代码如下: <?php class session { static $sessionObject; /* $_SESSION['user'] == 0 , don't work . * == 1 , he is really user . */ private function __construct() { if(! ( isset($_SESSION['user']) && $_SESSION['user']==0 )) session_set_co.........
▪php中将时间差转换为字符串提示的实现代码
如微博 这看起来更加人性化,好吧,上代码 代码如下: <?php class timeAgo { static $timeagoObject; private $rustle; private $unit; private function __construct() { } private function __clone(){ } public static function getObje.........
▪兼容firefox,chrome的网页灰度效果
只是在技术上来看,要实现网页灰度,最稳妥的办法莫过于直接处理所有图像,不用考虑兼容,不用考虑效率。但是,工作量比较大,切换回来也费力。 ie系列支持css滤镜,一句 filter:gray; .........
[1]php简单的会话类代码
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
class session
{
static $sessionObject;
/* $_SESSION['user'] == 0 , don't work .
* == 1 , he is really user .
*/
private function __construct()
{
if(! ( isset($_SESSION['user']) && $_SESSION['user']==0 ))
session_set_cookie_params(3600);
session_start(); //Initialize14 }15 private function __clone()
{
}
public static function getObject()
{
if(! self::$sessionObject instanceof self)
$sessionObject = new session() ;
return $sessionObject;
}
public function set_false()
{
$_SESSION['user'] = 0 ; // for PHP>=5
}
public function set_true()
{
if( isset($_SESSION['user']) )
$_SESSION['user'] = 1 ;
else
$this->error();
}
public function get_status()
{
return $_SESSION['user'];
}
public function end_session()
{
session_destroy();
}
public function error()
{
}
}
?>
大概用法
example :
log in page : $session = session::getObject();
$session->set_ture(); // if $row['password'] ==
next page :
代码如下:
$session = session::getObject();
if($session->get_status())
// .... the user is really
else
// ....
log out : $session = session::getObject();
$session->end_session();
由get_status()返回当前用户是否有效登录
[2]php中将时间差转换为字符串提示的实现代码
来源: 互联网 发布时间: 2013-11-30
如微博
这看起来更加人性化,好吧,上代码
<?php
class timeAgo
{
static $timeagoObject;
private $rustle;
private $unit;
private function __construct()
{
}
private function __clone(){ }
public static function getObject()
{
if(! (self::$timeagoObject instanceof self) )
self::$timeagoObject = new timeAgo();
return self::$timeagoObject;
}
private function count_int($unix_C) // main function
{
if(! (isset($unix_C) || is_numeric($unix_C)) )
return 'don\'t find parameter';
$d = time()-$unix_C ; // $d - unix time difference value
$d_int =(int)floor($d/60) ; // minimum unit -- minutes unix/60
$this->unit = 0 ; // is minutes,hour or day?
if($d_int < 60){ // minutes in one hour 3600
$this->rustle = $d_int;
$this->unit = 1;
}
else if($d_int < 720){ //hour in one day 3600*12
$this->rustle = floor($d_int/60);
$this->unit = 2 ;
}
else if($d_int < 7200){ //day in ten days 3600*12*10
$this->rustle = floor($d_int/720);
$this->unit = 3 ;
}
else{
$this->rustle = $d ;
$this->unit = 4 ;
}
}
public function piece_str($C)
{
$this->count_int($C);
$u = '';
switch( $this->unit )
{
case 1:
$u = 'minute';
break;
case 2:
$u = 'hour';
break;
case 3:
$u = 'day';
break;
case 4:
$u = '';
break;
case 0:
return 'sorry , get time is fail';
}
if($this->unit < 4)
{
if($this->rustle > 1)
return (string)$this->rustle.$u.'s ago';
else if($this->rustle == 1)
return (string)$this->rustle.$u.'ago';
else
return 'Just now';
}
}
/* example: $ago = timeAgo::getObject();
* echo $ago->piece_str($unix);
* // 2 days ago
*/
}
?>
这看起来更加人性化,好吧,上代码
代码如下:
<?php
class timeAgo
{
static $timeagoObject;
private $rustle;
private $unit;
private function __construct()
{
}
private function __clone(){ }
public static function getObject()
{
if(! (self::$timeagoObject instanceof self) )
self::$timeagoObject = new timeAgo();
return self::$timeagoObject;
}
private function count_int($unix_C) // main function
{
if(! (isset($unix_C) || is_numeric($unix_C)) )
return 'don\'t find parameter';
$d = time()-$unix_C ; // $d - unix time difference value
$d_int =(int)floor($d/60) ; // minimum unit -- minutes unix/60
$this->unit = 0 ; // is minutes,hour or day?
if($d_int < 60){ // minutes in one hour 3600
$this->rustle = $d_int;
$this->unit = 1;
}
else if($d_int < 720){ //hour in one day 3600*12
$this->rustle = floor($d_int/60);
$this->unit = 2 ;
}
else if($d_int < 7200){ //day in ten days 3600*12*10
$this->rustle = floor($d_int/720);
$this->unit = 3 ;
}
else{
$this->rustle = $d ;
$this->unit = 4 ;
}
}
public function piece_str($C)
{
$this->count_int($C);
$u = '';
switch( $this->unit )
{
case 1:
$u = 'minute';
break;
case 2:
$u = 'hour';
break;
case 3:
$u = 'day';
break;
case 4:
$u = '';
break;
case 0:
return 'sorry , get time is fail';
}
if($this->unit < 4)
{
if($this->rustle > 1)
return (string)$this->rustle.$u.'s ago';
else if($this->rustle == 1)
return (string)$this->rustle.$u.'ago';
else
return 'Just now';
}
}
/* example: $ago = timeAgo::getObject();
* echo $ago->piece_str($unix);
* // 2 days ago
*/
}
?>
[3]兼容firefox,chrome的网页灰度效果
来源: 互联网 发布时间: 2013-11-30
只是在技术上来看,要实现网页灰度,最稳妥的办法莫过于直接处理所有图像,不用考虑兼容,不用考虑效率。但是,工作量比较大,切换回来也费力。
ie系列支持css滤镜,一句 filter:gray; 就解决了所有问题。但是,众所周知,ie以效率低著名,你会发现开启以后速度显著下降。并且,最致命的,在其他浏览器下无效。
有没有兼容所有浏览器的办法呢?有。JavaScript能做到,早就有人用js模拟了ie的gray滤镜,如果你感兴趣并且愿意看英文,可以去看看《“GRAYSCALING” IN NON-IE BROWSERS》。如果你不愿意看,我可以直接告诉你怎么用。
1. 下载grayscale.js文件
2. 在你的header里引用这个js文件
<script type="text/javascript" src="/include/jscript/grayscale.js"></script>
3. 要实现全站灰度,在onload事件中调用
grayscale(document.body);
我的主题背景图片比较多,处理起来较吃力,可能出现部分图片消失的情况。。。
我会把这个效果开启三天,如果因为处理问题导致主题显示不正常影响了大家的浏览效果还请见谅。反正来这儿的都是熟人,要影响也就你们几个。。。
ie系列支持css滤镜,一句 filter:gray; 就解决了所有问题。但是,众所周知,ie以效率低著名,你会发现开启以后速度显著下降。并且,最致命的,在其他浏览器下无效。
有没有兼容所有浏览器的办法呢?有。JavaScript能做到,早就有人用js模拟了ie的gray滤镜,如果你感兴趣并且愿意看英文,可以去看看《“GRAYSCALING” IN NON-IE BROWSERS》。如果你不愿意看,我可以直接告诉你怎么用。
1. 下载grayscale.js文件
2. 在你的header里引用这个js文件
<script type="text/javascript" src="/include/jscript/grayscale.js"></script>
3. 要实现全站灰度,在onload事件中调用
grayscale(document.body);
我的主题背景图片比较多,处理起来较吃力,可能出现部分图片消失的情况。。。
我会把这个效果开启三天,如果因为处理问题导致主题显示不正常影响了大家的浏览效果还请见谅。反正来这儿的都是熟人,要影响也就你们几个。。。
最新技术文章: