PHP:2019年你面试会遇到的题目及解答(汇总)

PHP:2019年你面试会遇到的题目及解答(汇总)2019 年 PHP 面试常用题汇总及答案如下 1 如何防止 form 表单重复提交 2 Cookie 被禁用了 session 还可以使用吗 3 你了解的或者用过的版本控制工具有哪些 简单说明一下 CVS SVN vss git4 单例模式的优点 如何实现 5 单引号和双引号的区别是什么 1 双引号可以解析变量 单引号不能解析变量 2 双引号和单引号可以互相嵌套 3 双引号当中的变量可以

2019年PHP面试常用题汇总及答案如下:

1.如何防止form表单重复提交?

2.Cookie被禁用了session还可以使用吗?

3.你了解的或者用过的版本控制工具有哪些?简单说明一下。

CVS,SVN, vss, git

4.单例模式的优点,如何实现?

5.单引号和双引号的区别是什么?

(1)双引号可以解析变量,单引号不能解析变量

(2)双引号和单引号可以互相嵌套

(3)双引号当中的变量可以使用特殊字符分隔开,但是特殊 字符会原样输出,使用{}不会输出

(4)双引号当中包含单引号,单引号当中包含变量,变量会被解析,单引号会被原样输出

(5)双引号可以解析转义字符,单引号不会解析转义字符,单引号只会解析本身和’单引号本身的转义

(6)单引号当中嵌套单引号,双引号当中嵌套双引号,当中的单引号和双引号需要使用转义符合

(7)单引号效率要高于双引号

6.对于大流量的网站,你采用什么样的方法来解决访问量问题?

7.MySQL数据库中的字段类型varchar和char的主要区别是什么?那种字段的查找效率要高,为什么?

8.说明echo(),var_dump(),print_r()的区别。

9.请说明php中传值与传引用的区别。什么时候传值什么时候传引用?

10.说明Include,include_once,require,require_once的区别?

11.优化MYSQL数据库的方法。(4分,多写多得)

答:(1)选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如’省份,性别’,最好设置为ENUM。

(2)使用连接(JOIN)来代替子查询:

(3)使用联合(UNION)来代替手动创建的临时表

(4)事务处理:

(5)锁定表,优化事务处理:

(6)使用外键,优化锁定表

(7)建立索引:

(8)优化查询语句

12.如何优化查询语句,提高查询效率?

13.Session与cookie的区别?

14.Get和post的区别?

15.什么是mysql的事务?事务有哪些特性?

16.常用的超全局变量

$_GET —–>get传送方式

$POST —–>post传送方式

$REQUEST —–>可以接收到get和post两种方式的值

17.HTTP状态码

200 – 请求成功

301 – 资源(网页等)被永久转义到其他URL

404 – 请求的资源(网页等)不存在

505 – 内部服务器错误

1 – 信息,服务器收到的请求,需要请求者继续执行操作

2 – 成功,操作被成功接收并处理

3 – 重定向,需要进一步的操作以完成请求

4 – 客户端错误,请求包含语法错误或者无法完成请求

5 服务器错误,服务器在处理请求的过程 中发生了错误

18.如何获取客户端的ip(要求取得一个int)和服务器ip的 代码

客户端:$_SERVER[“REMOTE_ADDR”];或者getenv(‘REMOTE_ADDR’)

服务器端:gethostbyname(‘www.baidu.com’)

19.写出三种以上MySQL数据库存储引擎的名称

MyISAM、InnoDB、BDB(BerkeleyDB)、Merge、Memory(Heap)、Example、Federated、

Archive、CSV、Blackhole、MaxDB 等等十几个引擎

20.使用过 Memcache 缓存吗,如果使用过,能够简单的描述一下它的工作原理

Memcahce 是把所有的数据保存在内存当中,采用 hash 表的方式,每条数据由 key 和 value 组成,每个 key 是独一无二的,当要访问某个值的时候先按照找到值,然后返回结果。

Memcahce 采用 LRU 算法来逐渐把过期数据清除掉

21.说明 Ajax 实现原理是什么及 json 在 Ajax 中起什么作用

Ajax 的工作原理是一个页面的指定位置可以加载另一个页面所有的输出内容,这样就实现了一个静态页面也能获取到数据库中的返回数据信息了。所以 Ajax 技术实现了一个静态网页在不刷新整个页面的情况下与服务器通信,减少了用户等待时间,同时也从而降低了网络流量,增强了客户体验的友好程度。

在使用 Ajax 时,涉及到数据传输,即将数据从服务器返回到客户端,服务器端和客户端分别使用不同的脚步语言来处理数据,这就需要一种通用的数据格式,XML 和 json 就是最常用的两种,而 json 比 XML 更简单

22.php中字符串处理函数列举3-6个

strlen() 函数返回字符串的长度

strpos() 函数用于检索字符串内指定的字符或文本

strtolower — 将字符串转变为小写

strtoupper –将字符串转变为大写

strtr — 对字符串比较替换

substr — 对字符串进行截取

explode — 将一个字符串用分割符转变为一数组形式

implode — 将数组用特定的分割符转变为字符串

我自己是一名老程序员,目前从事教学工作,在教学过程中整理了许多php资料干货,从最基础的入门到就业各种架构都有整理,送给每一位初学和进阶中学习php的小伙伴。”

加号:(验证填好)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/174127.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月27日 上午7:07
下一篇 2026年3月27日 上午7:07


相关推荐

  • ERNIE-4.5-0.3B-PT新手必看:vLLM部署常见问题与Chainlit调用技巧

    ERNIE-4.5-0.3B-PT新手必看:vLLM部署常见问题与Chainlit调用技巧

    2026年3月18日
    3
  • hdoj 3341 Lost’s revenge 【AC自动机 + 变进制状态压缩dp】

    hdoj 3341 Lost’s revenge 【AC自动机 + 变进制状态压缩dp】Lost’srevengeTimeLimit:15000/5000MS(Java/Others)    MemoryLimit:65535/65535K(Java/Others)TotalSubmission(s):3452    AcceptedSubmission(s):932ProblemDescriptionLostandAe

    2022年7月22日
    12
  • docker stats详解_docker socket

    docker stats详解_docker socketOS:Centos    1.安装编译时所需文件       yuminstallbisongccgcc-c++autoconfautomakezlib*libxml*ncurses-devellibtool-ltdl-devel*    2.安装Cmake       wgethttp://www.cmake.org/fi

    2022年8月24日
    7
  • python元组索引_Python 元组、列表

    python元组索引_Python 元组、列表Python 中 最常用的数据结构就是序列了 序列有以下几种 元组 列表 字符串等 注 代码都是在 IDE 中编辑的 没有用交互式环境 一 元组 tuple 元组其实有点类似 C 中的数组 即一旦指定了内容 那么这个元组就固定下来不能变了 不过并不是绝对不能改变 如果一个元组成员是一个列表 那么这个列表的修改操作是允许的 另外 Python 是动态语言 因此元组中各个成员并不需要是同一种类型 a 1

    2026年3月16日
    3
  • javascript中一个字符占几个字节

    javascript中一个字符占几个字节一般来说英文是1个,中文是两个。但是会根据编码方式不同而不同。以下是搬运:英文字母和中文汉字在不同字符集编码下的字节数英文字母:字节数:1;编码:GB2312字节数:1;编码:GBK字节数:1;编码:GB18030字节数:1;编码:ISO-8859-1字节数:1;编码:UTF-8字节数:4;编码:UTF-16字节数:2;编码:UTF-16BE字节数…

    2025年5月31日
    3
  • java redis锁_Java中Redis锁的实现[通俗易懂]

    java redis锁_Java中Redis锁的实现[通俗易懂]由于具体业务场景的需求,需要保证数据在分布式环境下的正确更新,所以研究了一下Java中分布式锁的实现。Java分布式锁的实现方式主要有以下三种:数据库实现的乐观锁Redis实现的分布式锁Zookeeper实现的分布式锁其中,较常用的是前两种方式,但是数据库实现方式需要较多的数据库操作,所以最终选择的是用Redis实现分布式锁。最初考虑分布式锁的数据安全性的时候,只考虑到两点。第一,Redis锁需要…

    2022年6月23日
    30

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号