03 2013 档案
摘要:1.传值,传址,传引用的区别?解:传值是普通的参数传递,传址是指变量指向内存中的地址,传引用是指对象的传递 如:把对象A赋给对象B, $B = $A。2.ajax跨域?解:JSONP,JSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。于同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源,为了实现跨域请求,可以通过script标签实现跨域请求,然后在服务端输出JSON数据并执行回调函数,从而
阅读全文
摘要:1. APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存” APC的缓存分两部分:系统缓存和用户数据缓存. 详细介绍见:http://162cm.iteye.com/blog/2201972. lambda(匿名)函数和闭包 create_function(string args, string code)<?php// http://cn.php.net/manual/zh/function.create-function.php$lambda = create_function('$a,$b','return ($a >
阅读全文
摘要:javascript函数是将要执行的代码以及执行这些代码的作用域构成的一个综合体。在计算机科学术语里,这种代码和作用域的综合体叫做闭包。所有的javascript函数都是闭包。但就是说,当一个嵌套函数被导出到它所定义的作用域外时,这种闭包才是有趣的。当一个嵌套的函数以这种方式使用的时候,它常常明确地叫做一个闭包。在Javascript中闭包(Closure),有两个特点:作为一个函数变量的一个引用 - 当函数返回时,其处于激活状态。一个闭包就是当一个函数返回时,一个没有释放资源的栈区。uniqueID = funcrtion(){if(!arguments.callee.id) argumen
阅读全文
摘要:SQL注入漏洞成因在于Web应用程序对用户提交CGI参数数据未做充分检查过滤。用户提交的数据可能会被用来构造访问后台数据库的SQL指令,如果这些数据过滤不严格就有可能被插入恶意的SQL代码,从而非授权操作后台的数据库,导致从敏感信息泄露、破坏数据库内容和结构、甚至利用数据库本身的扩展功能控制服务器操作系统。利用SQL注入漏洞可以构成对Web服务器的直接攻击,还可能利用服务器攻击第三方的浏览网站的其他用户。例如:$sql = "select * from user where name='".$_POST['name']."' and
阅读全文
摘要:在oop中,一个对象只负责一个特定的任务通常是一种很好的做法。所有的单例类至少拥有以下三种公共元素。1. 必须拥有一个构造函数,并且被标记为private。2. 拥有一个保存类的实例的静态成员变量。3. 拥有一个访问这个实例的公共的静态方法。4.另外,需要创建__clone()方法防止对象被复制(克隆)。和普通类不同,单例类不能在其他类中直接实例化,只能被自身实例化。要想获得这种效果,__construct()方法必须被标记为private。<?php class Database { private $_db; static $_instance; ...
阅读全文