二进制权限控制PHP类
<?php
/* 二进制权限控制PHP类
* 作 者: 多菜鸟
* 邮 箱: kingerq AT QQ DOT com
* 来 源:http://blog.csdn.net/kingerq/archive/2009/10/22/4714223.aspx
* 创建时间: 2009-10-22
*/
class binPower{
var $power = "";
//权限存贮变量,十进制整数
function __construct($power){
$this->power = intval($power);
}
/* 添加指定权限
* $right 为2的N次方十进制整数,N代表权限序号
*/
function addPower($right){
//利用逻辑或添加权限
$this->power = $this->power | intval($right);
}
/* 删除指定权限
* $right 为2的N次方十进制整数,N代表权限序号
*/
function delPower($right){
//删除权限,先将预删除的权限取反,再进行与操作
$this->power = $this->power & ~intval($right);
}
/* 判断是否存在指定权限
* $right 为2的N次方十进制整数,N代表权限序号
*/
function isPower($right){
//权限比较时,进行与操作,得到0的话,表示没有权限
if( ($this->power & intval($right)) == 0 ) return false;
return true;
}
/*
* 返回操作后的权限
*/
function returnPower(){
//为了减少存贮位数,返回也可以转化为十六进制
return $this->power;
}
}
/*
//示例
$right = new binPower(bindec(110011));
echo "Power: ".$right->power.' | '.decbin($right->power);
echo "<br>\n";
$right->addPower(4);
echo "Power +4: ".$right->power.' | '.decbin($right->power);
echo "<br>\n";
$right->delPower(2);
echo "Power -2: ".$right->power.' | '.decbin($right->power);
echo "<br>\n";
echo $right->isPower(bindec(100));
echo "Power is ".bindec(100).": ".$right->power.' | '.decbin($right->power);
echo "<br>\n";
*/
?>
<script language="javascript">
<!--
/*
* 二进制权限控制JAVASCRIPT函数
* 作 者: 多菜鸟
* 邮 箱: kingerq AT QQ DOT com
* 来 源:http://blog.csdn.net/kingerq/archive/2009/10/22/4714223.aspx
* 创建时间: 2009-10-22
*/
//初始权限,十进制
var power;
/* 添加权限
相关文档:
Blog系统作为大家最常接触的互联网东东,在站长群体中几乎人手一博,从知名门户的博客频道,到网络营销专家博客,网民对博客的关注度在不断提高并深化。目前网上免费的blog系统太杂,在此整理PHP版的Blog介绍如下:
1、wordpress:http://www.wordpress.org 功能也很全面,应该是支持blog的首选。它有最强的模版功能,已经 ......
PHP是一门开发速度快,运行速度快的语言,但是它也有致命缺点,无多线程(虽然Apache的服务器在另一种程度上弥补了这种缺陷,但是在编写一些需要高并发并且考虑效率的程序下,它还是明显不足)。
但是PHP可以大大缩短开发周期,与开发成本(比如PHP对于程序要求的门槛很低)。
总体来说,PHP很适合开发网站来用,而在开发 ......
php文件
<?php
mysql_connect("localhost","","");
mysql_query("set names 'gb2312'");
mysql_select_db("shop");
$sqlstr="select * from goods";
require 'smarty/libs/Smarty.class.php';
$smarty = new Smarty;//设置各个目录的路径,这里是安装的重点
$smarty->template_dir ="smarty/templates/templa ......
如何不使用prepared statment,而是用过滤的方法避免SQL注入呢?
一般来说mysql自带的过滤函数是比较可靠的。mysql_real_escape_string()
但是这个函数在某些字符集中有问题,比如GBK。如果你用UTF8那没关系。
在PHP里设置数据库的字符集不应该用:mysql_query("SET NAMES UTF8");
而应该用:mysql_set_charset()
这样 ......
class lamp
{
public function __construct()
{
}
public function __get($var) //获取不存在的属性时调用
{
echo "不存在变量$var<br>";
}
public function __set($var ......