首頁 >後端開發 >php教程 >php面试常问的问题

php面试常问的问题

WBOY
WBOY原創
2016-06-23 13:11:41942瀏覽

一、MVC的优缺点

    缺点:

     1. 增加了系统结构和实现的复杂性,产生过多的更新操作,降低了运行效率。

     2. 视图离不开控制器,妨碍了他们的重用性;

    

    优点:

     1. 开发人员可以只关注整体结构中的其中某一层

     2. 降低层与层之间的依赖关系

     3. 有利于标准化

     5. 项目结构更清楚,分工更明确,有利于后期的维护和升级

     

二、面向对象的三个基本特征是啥?

     1. 封装:将功能封装成一个个独立的单元,避免牵一发而动全身,方便对程序修改

     2. 继承:代码重用,减少编码量,间接较少维护成本

     3. 多态性:多态性是指允许不同类的对象对同一个消息做出响应


三、面向对象程序开发的优点:

     1. 开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。

     2. 应用程序更易于维护,更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。


四、xss跨站脚本攻击

    攻击:

     1. xss属于被动式且用于客户端的攻击方式

        原理:攻击者向有xss漏洞的网站输入恶意的html代码,当其他用户浏览该网站时,这段html代码会自动执行,从而达到攻击的目的。

     2. 攻击之前, 我们先找到一个存在xss漏洞的网站,xss漏洞分为两种,一种是DOM Based xss漏洞,另外一张是Stored XSS漏洞,所有课输入的地方没有对输入数据进行处理的话,都会存在xss漏洞,xss的危害取决于攻击代码的威力,攻击代码也不局限于script

    防御:

     1. 对用户的输入进行处理,只允许输入合法的值,其它值一概过滤掉

     2.  我们不能对用户数据进行严格的过滤的时候,那我们就对标签进行转换


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn