PHP常见面试题1

本文涵盖了PHP面试中常见的问题,包括HTTP状态码、RESTful原则、表单防重复提交、PHP函数、字符串操作、面向对象概念、访问修饰符、代码执行结果、无限级分类实现、日志文件操作、InnoDB与MyISAM的区别、MySQL优化、Linux命令以及网络协议模型的解析。
摘要由CSDN通过智能技术生成

一、HTTP常见状态码

200:请求已完成
301:永久重定向
302:临时重定向
304:未修改
400:错误请求
401:未授权
403:已禁止
404:未找到
408:请求超时
500:服务器内部错误
502:网关错误
503:服务不可用
504:网关超时
505HTTP版本不受支持

二、Restful的理解

restful就是一套编写接口的协议,协议规定如何编写以及如何设置返回值、状态码等信息

Restful就是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制

URL定义:POST添加,创建、GET查询、DELETE删除、PUT修改,更新

三、如何防止表单重复提交

1、数据库添加唯一字段
在数据库建表的时候添加主键约束,账号,名称的信息添加唯一性约束,确保数据库只可以添加一条数据
注意:此方法最有效的防止了数据重复提交

2、用js为添加禁用
当用户提交表单之后,可以使用js将提交按钮隐藏(disable属性),防止用户多次点击按钮提交数据
注意:如果客户端禁止使用js,则此方法无效

四、写几个常用的PHP函数

array_column — 返回数组中指定的一列
array_pop — 将数组最后一个单元弹出(出栈)
array_push — 将一个或多个单元压入数组的末尾(入栈)
array_shift — 将数组开头的单元移出数组 
array_unshift — 在数组开头插入一个或多个单元
array_chunk — 将一个数组分割成多个
array_merge — 合并一个或多个数组
array_diff — 计算数组的差集
array_intersect — 计算数组的交集
array_unique — 移除数组中重复的值
array_rand — 从数组中随机取出一个或多个单元
array_product — 计算数组中所有值的乘积
array_sum — 计算数组中所有值的和
array_count_values — 统计数组中所有的值出现的次数
array_slice — 从数组中取出一段
array_combine — 创建一个数组,用一个数组的值作为键名,另一个数组的值作为值
array_search — 在数组中搜索给定的值,如果成功则返回相应的键名 
array_values — 返回数组中所有的值
array_keys — 返回数组中部分的或所有的键名
array_key_exists — 检查给定的键名或索引是否存在于数组中
array_flip 交换数组的键和值
is_array — 检测变量是否是数组
in_array — 检查数组中是否存在某个值
array_fill — 用给定的值填充数组
array_fill_keys — 使用指定的键和值填充数组
array_replace — 使用传递的数组替换第一个数组的元素
array_filter 用回调函数过滤数组中的单元
array_reverse 字符串反转
sort() - 以升序对数组排序
rsort() - 以降序对数组排序

五、写几个常用的字符串函数

strlen($str) — 返回字符串长度
mb_strlen($str) 可以返回中文字符长度;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值