15
2009
11

PHP中插件机制的一种实现方案

这篇文章的出发点是我对插件机制的理解,及其在PHP中的实现。此方案仅是插件机制在PHP中的实现方案之一,写下来和大家分享,欢迎大家一起讨论。


插件,亦即Plug-in,是指一类特定的功能模块(通常由第三方开发者实现),它的特点是:当你需要它的时候激活它,不需要它的时候禁用/删除它;且无论是激活还是禁用都不影响系统核心模块的运行,也就是说插件是一种非侵入式的模块化设计,实现了核心程序与插件程序的松散耦合。一个典型的例子就是Wordpress中众多的第三方插件,比如Akimet插件用于对用户的评论进行Spam过滤。


一个健壮的插件机制,我认为必须具备以下特点:


插件的动态监听和加载(Lookup) 

插件的动态触发 

以上两点的实现均不影响


More...

12
2009
11

14条最佳JS代码编写技巧

1. 总是使用 'var'

在Javascript中,变量不是全局范围的就是函数范围的,使用"var"关键词将是保持变量简洁明了的关键。当声明一个或者是全局或者是函数级(function-level)的变量,需总是前置"var"关键词,下面的例子将强调不这样做潜在的问题。

不使用 Var 造成的问题

var i=0; // This is good - creates a global variable
function test() {
   for (i=0; i<10; i++) {
      alert("Hello World!");
   }
}
test();
alert(i); // The global variable i is now 10!


More...

03
2009
10

JavaScript Tween算法及缓动效果

Flash做动画时会用到Tween类,利用它可以做很多动画效果,例如缓动、弹簧等等。我这里要教大家的是怎么利用flash的Tween类的算法,来做js的Tween算法,并利用它做一些简单的缓动效果。

效果说明

首先大家到这里下载flash的as脚本(建议看看这里的demo),1.0和2.0都可以(里面的算法都一样)。
例如打开2.0的可以看到几个as文件,每个文件对应一个Tween效果,分别有(参考里面的说明):

Linear:无缓动效果; 
Quadratic:二次方的缓动(t^2); 
Cubic:三次方的缓动(t^3); 
Quartic:四次方的缓动(t^4); 
Quintic:五次方的缓动(t^5); 
Sinusoidal:正弦曲线的缓动(si

More...

01
2009
10

感受JavaScript的魅力--网页版超级玛丽

      说起超级玛丽,相信很多人都不会不知道吧。作为童年时代的美好回忆,你也是不是想再一次重温呢?哈哈,这次不用再玩红白机了,来个更猛的。今天介绍的超级玛丽使用JavaScript写的网页游戏,没错,是JavaScript,在这里就不多说了,直接附上地址,大家去玩吧。 

    相信大家不会不知道超级玛丽的玩法吧?记住这个网页版的按“回车”键开始游戏,“左右键”控制前后方向, A 射击, S 跳。 

>>>>>JavaScript版超级玛丽http://jsmario.com.ar/ 

      不少Web开发者们大跌眼镜:这真的是用JavaScript开发出来的?答案是肯定的。这款游戏利用了Canvas元素(IE中用HTML模拟),图像存储在加密的字符串中,还用base64存储了MIDI背景音乐。除了这些技巧,其它代码就是我们熟悉

More...

30
2009
09

让office2003兼容office2007格式文件

众所周知,office从2007版本开始,使用了新的文件格式,如docx、xlsx,这样给使用office 2003版本的用户造成了不便。

其实微软已经想到了这个问题,如果你使用office2003,那么只需要安装一个兼容office2007补丁即可

下载地址:[点击下载:FileFormatConverters.exe]

30
2009
09

JS获取地址栏任意部分

URL即:统一资源定位符 (Uniform Resource Locator, URL) 
完整的URL由这几个部分构成:
scheme://host:port/path?query#fragment 
scheme:通信协议
常用的http,ftp,maito等

host:主机
服务器(计算机)域名系统 (DNS) 主机名或 IP 地址。

port:端口号

More...

17
2009
07

什么是云计算 带你认识云计算操作系统

云计算操作系统   而对于云计算操作系统来讲,微软Windows Azure云计算服务可以给予很好的解释。早在去年2008年10月27日的微软开发者大会(PDC)上,微软首席软件设计师Ray Ozzie公布了云计算服务Windows Azure。


More...

13
2009
07

vbs 基本语法

call produce(argument1)
Dim bian1,biang2
const chang1,chang2
erase
erase array
exit
exit do
exit for
exit function
exit sub
option explicit 强制详细定义变量
select case
VBscript常用函数: 
1.数值型函数: 
abs(num): 返回绝对值 
sgn(num): num>0 1; num

More...

11
2009
07

注册表修改技巧 目录控制

改变“开始菜单”的目录 

HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders,在右边窗口中更改字符串"Start Menu"的数值为新的目录路径, 如 C:\tt,
记住要把原目录里的文件复制到新的目录。 


改变“应用程序数据”的目录 

HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders,在右边窗口中更改字符串"AppData"的数值为新的目录路径, 如 C:\tt,
记住要把原目录里的文件复制

More...

06
2009
05

vbs脚本的base64编码解码函数

最近做了一些涉及base64的东西,用多种语言写了这个函数,手头有这个vbs脚本的函数(非原创),在此记忆一下

MsgBox "abc的base64编码是 : " & base64Encode("abc"),64,"abc的base64编码是"
MsgBox "编码再解码是 : " & base64uncode(base64Encode("abc")),64,"编码再解码"
Function base64Encode(sString)
    If sString = "" or IsNull(sString) Then
        base64Encode = ""
        Exit Function
    End If
    Dim xml_dom, No


More...