php 面试程序逻辑问题,php面试实用问题

24084849d2880c22693e6ae246bcdac2.png

常见问题问题(区别篇)

session与cookie的区别

cookie定义:cookie是会话技术中的一种,是一种服务器将能够 标识用户的数据保存在客户端的一种机制

1、session跟cookie都是用于记录用户的信息

2、Session默认情况下是存储在磁盘上(可以修改session的 机制使存储位置不一样)(have_set_save_handle)。Cookie 保存在”浏览器上的”

3、Session是基于cookie的基础之上的

4、cookie有存储上限

post与 get的区别

1、提交方式不同,get地址栏提交,post协议后台提交

2.传输大小不同,post相对大一些,浏览器限制

3.安全性不同,post相对安全,(两者均可以被模仿)

4.http协议请求行不同,get后有空行,post没有

redis与memcache的区别

1.memcache主要作用减少mysql服务器压力

2.内存性的数据缓存系统,读取速度更加快,安全性低

3.memcache需要对数据有备份,临时存储,服务器重启,内 存数据丢失

4.数据读取直接使用,没有从数据库读取并缓存memcache中

5.mecache原始数据修改,更新对应缓存或直接删除

6.memcache只支持字符串类型

7.redis数据持久化,备份功能,写入磁盘中,数据库特效

(1.redis支持持久化;redis支持数据类型多; Memcache 相对稳定,当redis数据较大性能有所下降,对于字符 串Memcache 支持1M,redis支持512M;redis的key没有上 限,memcach最大为250字符)

http、https与tcp协议认识

1. TCP 传输控制协议,是一种提供可靠数据传输的通用协 议,TCP协议更靠近应用层。

2.HTTP协议即超文本传送协议,服务及客户端响应性,无状 态,无连接。

3.HTTP下加入SSL层,HTTPS的安全基础是SSL,需要交费,端 口号为443。

4.https协议效率是http的十分之一。

TPthink框架中D与M函数区别

1.M函数实例化的是基类模型,D实例化自定义模型

2.M相对处理代码业务功能性较低

3.M函数可以垮库及多库连接

面向过程跟面向对象认识

1.面向过程指把一个问题当做一个流程,把问题分析成一步 一步的步骤,再写代码,函数,按过程的顺序依次调用

(第1步:分析步骤;第2步:使用函数实现每一个步骤;第3 步:按顺序调用即可。)

2.第1步:分析步骤;第2步:封装函数;第3步:封装到对 象;第4步:按顺序调用。

相同点:模块化的编程,封装到函数,满足代码复用

不同点:1.面向过程解决问题最高效

2.面向对象效率相对较低

3.面向对象适合大项目,后期维护,扩展方便

MVC认识:

1.一种网页开发的设计思想,将数据输入,业务处理,数据 输出,分离开,由控制器,模型,视图三部分构成;

2控制器控制模型获取数据,控制视图显示数据;模型调用 mysql获取数据,视图调用模板;

优点: 1. 耦合性低,模型业务逻辑分离,更改影响较小

2.可重用性高,多个视图共享一个模型,并且返回的数据没 有进行格式化

3.可维护性,扩展性强。逻辑及视图分离原因

4.部署完架构后,开发效率非常快

缺点:

1.没有明确的定义,故网址的布局,业务逻辑要求高

2.由于需要花费较多时间部署模型,不适应与中小型项目,

3.内部使用了复杂的构建,所以运行效率相对较低

PHP中抽象类跟接口区别:

1.抽象类是一种特殊类,接口是一种特殊的抽象类;

2.继承关键字为“extends”,接口为“implements”

3.抽象类可以声明变量,接口只能用const定义常量

4.类可以实现多个接口,却只能实现一个抽象类

5.抽象类定义-》abstract,接口定义-》interface

6.抽象类为半成品,接口里面全部都是抽象方法;

多态的重写与重载区别:

重载定义:

类外对不可访问的属性进行访问的处理方式

1.重写指的是子类继承父类,并实现对父类中的方法重写

2.重载值的是类中有多个同名的方法,根据传参不同,调用 不同的函数

进程跟线程的区别:

1.进程指一个应用程序的运行

2.运行程序中的某一部分组成

include与require/include_once、require_once区别:

1.include 错误报一个warning,php脚本继续执行

2.require 报error,php脚本终止执行

3.include_once、require_once 先检查是否引入过就不在引入

char与varchar区别:

1.两者存储大小不同,char 258,varchar65535

2.char为定长,varchar变长,char效率更高,时间换空间

3.char保留两边的空格,varchar会去掉空格

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值