首页 >  面试题 > 网络营销-企业面试宝典 > 

结构化的PHP开发人员面试过程(高级PHP面试题)

结构化的PHP开发人员面试过程(高级PHP面试题)

作者:yjl 来源:华育国际 时间:2015-03-16 访问次数:3894
结构化的PHP开发人员面试过程(高级PHP面试题)

结构化的PHP开发人员面试过程(高级PHP面试题

通用知识:

1. 什么是Cookie? Cookied的用处是什么?

指网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。定义于RFC2109。是网景公司的前雇员Lou Montulli在1993年3月所发明。

因为HTTP协议是无状态的,即服务器不知道用户上一次做了什么,这严重阻碍了交互式Web应用程序的实现。在典型的网上购物场景中,用户浏览了几个页面,买了一盒饼干和两瓶饮料。最后结帐时,由于HTTP的无状态性,不通过额外的手段,服务器并不知道用户到底买了什么。 所以Cookie就是用来绕开HTTP的无状态性的“额外手段”之一。服务器可以设置或读取Cookies中包含信息,借此维护用户跟服务器会话中的状态。

在刚才的购物场景中,当用户选购了第一项商品,服务器在向用户发送网页的同时,还发送了一段Cookie,记录着那项商品的信息。当用户访问另一个页面,浏览器会把Cookie发送给服务器,于是服务器知道他之前选购了什么。用户继续选购饮料,服务器就在原来那段Cookie里追加新的商品信息。结帐时,服务器读取发送来的Cookie就行了。

Cookie另一个典型的应用是当登录一个网站时,网站往往会请求用户输入用户名和密码,并且用户可以勾选“下次自动登录”。如果勾选了,那么下次访问同一网站时,用户会发现没输入用户名和密码就已经登录了。这正是因为前一次登录时,服务器发送了包含登录凭据(用户名加密码的某种加密形式)的Cookie到用户的硬盘上。第二次登录时,(如果该Cookie尚未到期)浏览器会发送该Cookie,服务器验证凭据,于是不必输入用户名和密码就让用户登录了。

2. 在开发过程中如果遇到技术问题或其他问题,你是如何进行解决的?

答案:1):理解和分析问题,找出问题的核心与关键所在

2) 对问题解决的具体方案提出假定和设想。先以假设的方式对问题进行推测、假定和设想问题的结论与问题解决的原则、途径、方法。

3) 检验假设是对假设进行验证的过程,它是问题解决的最后步骤。检验假设的方法有两种。一种是直接检验,即通过实验和实践活动来检验。

4)总结问题,避免类似的问题再次出现

3. PHP中$message和$$message的区别是什么?

答案:举例:

$cs = 'abc';

$$cs = 'yes';

那么echo $abc;将会输出yes;

也就是说$$cs相当于$abc这个变量,当然,如果$cs的值变了,比如变成'cba',那么$abc也就不存在了,那个$$cs也就变成$cba了.

第二.&相当于指针那样

比如 $a = 'aaa';

$b = &$a;

$b = 'abc';

现在echo $a;就会输出abc而不是aaa,因为$b变量指向$a变量的地址,你赋予$b变量值的同时也就相当于修改了$a的值.