版权声明:版权所有,转载请注明来源! https://blog.csdn.net/qq_34206560/article/details/79539501
一、SESSION 与 COOKIE的区别是什么,请从协议,产生的原因与作用说明?
1、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。
2、SESSION存储在服务器端,COOKIE保存在客户端。Session比较安全,cookie用某些手段可以修改,不安全。Session依赖于cookie进行传递。
禁用cookie后,session不能正常使用。Session的缺点:保存在服务器端,每次读取都从服务器进行读取,对服务器有资源消耗。Session保存在服务器端的文件或数据库中,默认保存在文件中,文件路径由php配置文件的session.save_path指定。Session文件是公有的。
不使用cookie向客户端发送一个cookie.
理解:session_start()开启时,生成一个常量 SID,当COOKIE开启时,这个常量为空,当COOKIE关闭时,这个常量中存储了PHPSESSID的值。通过在URL后加一个SID参数来传递SESSIONID的值,从而使客户端页面可以使用SESSION里面的值。 当客户端开启COOKIE和服务器端开启SESSION时。 浏览器第一次请求,服务器会向浏览器端发送一个COOKIE里面存储SESSIONID. 当浏览器第二次请求时,会把已存在的COOKIE一起提交到服务器端。
二、简述Cookie的设置及获取过程
设置COOKIE的值:
Setcookie(名称,值,保存时间,有效域);
获取值:$_COOKIE['名称'];
三、HTTP 状态中302、403、 500、200、404、502代码含义?
一二三四五原则: 一. 消息系列 二. 成功系列   三. 重定向系列 四. 请求错误系列 五. 服务器端错误系列  302:临时转移成功,请求的内容已转移到新位置 403:禁止访问 500:服务器内部错误 401代表未授权。 200是请求成功,404是文件未找到,502是服务器内部错误。
四、MyISAM 和 InnoDB 的基本区别?索引结构如何实现?
MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行速度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持以及外部键等高级数据库功能。
创建索引:alert table tablename add index (`字段名`)
五、include与require的区别?
1.include()在执行文件时每次都要进行读取和评估
  require()文件只处理一次(实际上文件内容替换了require()语句)
2.require()通常放在PHP脚本程序的最前面
  include()的使用和require()一样,一般放在流程控制的处理区段中,PHP脚本文件读到include()语句时,才将它包含的文件读进来,这种方式,可以把程序执行时的流程简单化
3,require()和include()语句是语言结构,不是真正的函数,可以像PHP的其他语言结构一样
4,include_once()和require_once()语句也是在脚本执行期间包括并运行指定文件,与include()require()唯一的区别是如果文件中的代码已经被包括了,则不会再次包括.
5,require()包含文件失败,停止执行,给出错误(致命的)
include()常用于动态包含.
通常是自动加载的文件,即使加载出错,整个程序还是继续执行
一个页面声明,另一个页面调用
包函文件失败,继续向下执行,返回一条警告
六、PHP字符串中单引号与双引号的区别?
单引号不能解释变量,而双引号可以解释变量。
单引号不能转义字符,在双引号中可以转义字符。
七、请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?
按值传递:函数范围内对值的任何改变在函数外部都会被忽略
    按引用传递:函数范围内对值的任何改变在函数外部也能反映出这些修改
    优缺点:按值传递时,php必须复制值。特别是对于大型的字符串和对象来说,这将会是一个代价很大的操作。按引用传递则不需要复制值,对于性能提高很有好处。
function test(&$a)
{
$a=$a+100;
}
$b=1;
echo $b;//输出1
test($b);   //这里$b传递给函数的其实是$b的变量内容所处的内存地址,通过在函数里改变$a的值 就可以改变$b的值了
echo "
";
echo $b;//输出101
八、面向对象中接口和抽象类的区别及应用场景?
1、有抽象方法的类叫做抽象类,抽象类中不一定有抽象方法,抽象方法必须使用abstract关键字定义。
2、接口中全部是抽象方法,方法不用使用abstract定义。
3、当有子类要设计一个上层,通常设计为抽象类,当多个类要设计一个上层,通常设计为接口。
九、echo(),print(),print_r()的区别?
echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)  
   Print()只能打印出简单类型变量的值(如int,string)  
   print_r()可以打印出复杂类型变量的值(如数组,对象)  
   echo  输出一个或者多个字符串
十、mysql_fetch_row() 和mysql_fetch_array之间有什么区别?
Mysql_fetch_row()以索引数组的方式取查询的结果集,mysql_fetch_array()以索引数组和关联数组两种方式取查询的结果集。
十一. HTTP协议中GET、POST和HEAD的区别?
HEAD: 只请求页面的首部。
GET: 请求指定的页面信息,并返回实体主体。
POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体。
(1)HTTP 定义了与服务器交互的不同方法,最基本的方法是 GET 和 POST。事实上 GET 适用于多数请求,而保留 POST 仅用于更新站点。
(2)在FORM提交的时候,如果不指定Method,则默认为GET请 求,Form中提交的数据将会附加在url之后,以?分开与url分开。字母数字字符原样发送,但空格转换为“+“号,其它符号转换为%XX,其中XX为 该符号以16进制表示的ASCII(或ISO Latin-1)值。GET请求请提交的数据放置在HTTP请求协议头中,而POST提交的数据则放在实体数据中;
GET方式提交的数据最多只能有1024字节,而POST则没有此限制。
(3)GET 这个是浏览器用语向服务器请求最常用的方法。POST这个方法也是用来传送数据的,但是与GET不同的是,使用POST的时候,数据不是附在URI后面传递的,而是要做为独立的行来传递,此时还必须要发送一个Content_length标题,以标明数据长度,随后一个空白行,然后就是实际传送的数据。网页的表单通常是用POST来传送的。
十二、表单中 get与post提交方法的区别?
1. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
2. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
3. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
get安全性非常低,post安全性较高。
十三、foo()和@foo()之间有什么区别?
@foo()控制错误输出

2018 php面试题相关推荐

  1. 软考软件设计师下午真题-面向对象的程序设计与实现-生成器设计模式(2018年上半年试题六))Java代码讲解

    软考软件设计师下午真题-面向对象的程序设计与实现-生成器设计模式(2018年上半年试题六))代码讲解 说明 Java代码 注释 说明 生成器(Builder)模式的意图是将一个复杂对象的构建与它的表示 ...

  2. 2018 iOS 面试题大全(补充完整版)

    原文地址:2018 iOS 面试题大全 由于原作者并没有继续更新,这里我转过来继续更新下 整理的一些iOS面试相关问题,持续更新,敬请关注 2018 iOS面试题大全---全方面剖析面试 1.2018 ...

  3. 数据分析真题日刷 | 欢聚时代2018校招笔试题-产品经理/数据分析/游戏运营/市场专员 A卷

    今日真题 欢聚时代2018校招笔试题-产品经理/数据分析/游戏运营/市场专员 A卷(来源:牛客网) 题型 客观题:单选5道,不定项选择10道 主观题:问答4道 完成时间 90分钟 牛客网评估难度系数 ...

  4. iOS【面试】2018年面试题集锦

    2018面试题: 1.KVO.KVC 是什么,各自底层的实现原理? 2.说说你理解的埋点? 3.消息转发机制原理? 4.说说你理解的weak属性,什么情况下使用 weak 关键字,相比 assign ...

  5. 阿里巴巴2018招聘笔试题喝汽水

    今天做了阿里巴巴2018年的客户端开发工程师的笔试题, 其中有一道题是这样的 阿里巴巴的食堂搞活动促销,已知某饮料1瓶3元钱, 4个瓶盖可以换一瓶,2个空瓶可以换一瓶,则30元 最多可以喝几瓶. 输入 ...

  6. Xiyou Linux Group 2017,2018,2019面试题

    西邮Linux2017纳新题 1. //分析下列程序的输出 int main(int argc, char *argv[]) {int t = 4; printf("%lu\n", ...

  7. 大疆网上测评题库_一份完整的大疆2018校招笔试题和面经送给大家~

    听说周日大疆就要笔试了,今年的秋招来的有点让人猝不及防啊,牛客的各种讨论群里都弥漫着一种恐惧的氛围,我是谁,我在哪,我该怎么办(惊恐脸)..... 哈哈哈 没关系,作为一个刚刚踏上工作岗位的老学长,去 ...

  8. 2018年公务员计算机考试试题,2018公务员考试试题

    一起看看本网今天收集的2018公务员行测考试逻辑判断试题(10),是不是能给你些帮助.更多试题请关注本网站更新. 2018公务员行测考试逻辑判断试题(10) 1.据调查,在众多手机品牌中,苹果.三星和 ...

  9. 2018中考计算机试题素材,山西省2018年中考信息技术专题复习(20个专题)试题+素材 (20份打包)...

    ID:8146356 资源大小:56895KB 资料简介: 压缩包中的资料: 山西省2018年中考信息技术专题复习第15题<辉煌中国>试题+素材.rar 山西省2018年中考信息技术专题复 ...

  10. 2018 前端面试题(不定期更新)

    前端基础面试题 以下更多的题目,希望大家能掌握更多的前端知识,发现自身的不足.不单单是看题目,背答案. 面试题应该反映出的只是你掌握前端知识的冰山一角.别把冰山全貌给展现出来咯 HTML/CSS 1. ...

最新文章

  1. Android端访问服务器核心代码
  2. FPGA/IC Technology Exchange
  3. socket的拉屎模型
  4. Dcloud课程1 APP的架构有哪些
  5. 【大话Hibernate】Hibernate两种实体关系映射详解
  6. SVN学习(二)——SVN 提交、更新、解决冲突等操作步骤
  7. PCL之鼠标拾取点云的三维坐标
  8. -xdebug java8_多种高级debug方法,帮你更快定位问题
  9. 以一种标准的办法,获取工作目录
  10. Godot 2D 和 3D 游戏引擎
  11. 陈小琼,你真不好等!
  12. centos linux 使用无线网卡,CentOS环境下安装无线网卡
  13. 【贤者之路】Python/c Api 扩展解析
  14. 出租车收费管理系统(MyEclipse+Java)
  15. 每天一句英语(有道)
  16. LiveData实践
  17. 根据excel的链接下载到电脑上
  18. 经典垃圾收集器(三)
  19. 【Oracle】更新数据表字段值
  20. vue3中组件给后代组件传值,provide和inject的使用

热门文章

  1. 【蓝桥系列】——十三届蓝桥杯PythonB组第五题E题蜂巢(AC代码)
  2. 通读《C++ primer plus》— C++中的5种数据类型转换方式
  3. 最易理解的C语言教学 第一章
  4. 如何制作会动的玫瑰花图片?静态图片动起来的方法
  5. Node系列-爬虫踩坑笔记
  6. 固定资产管理系统如何简化固定资产管理和盘点工作?
  7. 玩转大数据,城市规划不再“跟着感觉走”
  8. VMware中的虚拟机设置开启VT虚拟化 虚拟机中创建虚拟机
  9. 微信小程序图片等比缩放显示正中间
  10. Python利用SMTP/IMTP制作简单邮件(QQ邮箱)发送程序(保姆级)