PHP基础面试题
Posted jxc321
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP基础面试题相关的知识,希望对你有一定的参考价值。
1.POST和GET这两种提交方式有什么区别?
HTPT对于客户端与服务器的交互定义了不同的方式,最基本的方法有四种:PUT、DELETE、POST、GET,对应着对网络上某个资源的增、删、改、查。因此,GET一般用于获取、查询资源,而POST一般用于更新资源信息。
- 使用目的:GET 是从服务器上获取数据;POST 是向服务器传送数据
- 可见性:GET 请求参数是作为一个键值对的序列附加到URL上的;POST 则是把提交的数据放置在是HTTP包的包体中
- 安全性:GET 由于把参数添加到了URL上,因此是不安全的;而POST 则比较安全
- 数据大小:GET 一般传输数据大小不超过2k-4k(根据浏览器不同,限制不一样,但相差不大);POST 请求传输数据的大小根据 php.ini 配置文件设定。
2.什么是AJAX?它的优势是什么?
AJAX(Asynchronous javascript AND XML)的全称是异步的JavaScript和XML,可以实现局部刷新,减轻了服务器的压力,也提高了用户体验。
3.什么是MVC框架?它的优势是什么?
MVC(Model View Controller)是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
- 模型(Model):用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。
- 视图(View):界面设计人员进行图形界面设计。能够实现数据有目的的显示。
- 控制器(Controller):负责转发请求,对请求进行处理。起到不同层面间的组织作用,用于控制应用程序的流程。
优点是:可以实现代码的重用性,避免产生代码冗余;M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式
4.SESSION与COOKIE的区别?
由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session。 而在客户端,就需要Cookie,每次HTTP请求的时候,客户端都会发送相应的Cookie信息到服务端。
实际上大多数的应用都是用 Cookie 来实现Session跟踪的,第一次创建Session的时候,服务端会在HTTP协议中告诉客户端,需要在 Cookie 里面记录一个Session ID,以后每次请求把这个会话ID发送到服务器,我就知道你是谁了。
Session 因为 Session id 的存在,通常要借助 Sookie 实现,但这并非必要,只能说是通用性较好的一种实现方案。 如果客户端的浏览器禁用了Cookie,一般情况下,会使用一种叫做URL重写的技术来进行会话跟踪,即每次HTTP交互,URL后面都会被附加上一个诸如 sid=xxxxx 这样的参数,服务端据此来识别用户。
总结一下:
Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;
Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式。
- 存储位置:Session存储于服务器,Cookie存储于浏览器
- 安全性:session安全性比cookie高
- Session为‘会话服务’,在使用时需要开启服务(session_start()),Cookie不需要开启,可以直接用
- Session通常借助Cookie来实现。
5.PHP常用数组函数
- array():创建数组,eg:
以上是关于PHP基础面试题的主要内容,如果未能解决你的问题,请参考以下文章