PHP基础面试题

Posted jxc321

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP基础面试题相关的知识,希望对你有一定的参考价值。

1.POST和GET这两种提交方式有什么区别?

HTPT对于客户端与服务器的交互定义了不同的方式,最基本的方法有四种:PUT、DELETE、POST、GET,对应着对网络上某个资源的增、删、改、查。因此,GET一般用于获取、查询资源,而POST一般用于更新资源信息。

  1. 使用目的:GET 是从服务器上获取数据;POST 是向服务器传送数据
  2. 可见性:GET 请求参数是作为一个键值对的序列附加到URL上的;POST 则是把提交的数据放置在是HTTP包的包体中
  3. 安全性:GET 由于把参数添加到了URL上,因此是不安全的;而POST 则比较安全
  4. 数据大小: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的一种方式。

  1. 存储位置:Session存储于服务器,Cookie存储于浏览器
  2. 安全性:session安全性比cookie高
  3. Session为‘会话服务’,在使用时需要开启服务(session_start()),Cookie不需要开启,可以直接用
  4. Session通常借助Cookie来实现。

5.PHP常用数组函数

  • array():创建数组,eg:

以上是关于PHP基础面试题的主要内容,如果未能解决你的问题,请参考以下文章

程序员找工作必备 PHP 基础面试题

2019PHP面试题大全PHP基础部分

php面试题汇总二(基础篇附答案)

PHP面试题--基础

程序员面试必备PHP基础面试题 - 第十一天

php基础面试题