版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
360公司PHP岗位笔试真题及详细答案解析考试说明:本套试卷为360后端PHP开发岗位真实笔试真题,适配社招、校招岗位,题型涵盖PHP基础语法、核心函数、代码编程、MySQL数据库、Redis缓存、Linux运维、Web安全、框架实战等企业高频考点,题目贴合360业务开发场景,答案解析详细落地,适配求职备考需求。总分:100分考试时长:90分钟一、单项选择题(每题3分,共30分)1.以下关于PHP变量的说法,错误的是()A.PHP变量以$符号开头B.变量名不能以数字开头C.静态变量static仅在函数首次调用时初始化D.全局变量可以在函数内直接使用无需任何声明答案:D解析:PHP中函数内使用全局变量,必须通过global关键字声明或使用$GLOBALS超全局变量调用,无法直接使用。其余选项均为PHP变量基础规则。2.下列不属于PHP超全局变量的是()A.$_SERVERB.$_COOKIEC.$_LOCALD.$_SESSION答案:C解析:PHP常用超全局变量包含$_GET、$_POST、$_SERVER、$_COOKIE、$_SESSION、$_FILES、$_ENV、$GLOBALS,无$_LOCAL变量。3.MySQL中InnoDB存储引擎默认的事务隔离级别是()A.读未提交B.读已提交C.可重复读D.串行化答案:C解析:InnoDB默认隔离级别为可重复读,能够有效解决幻读以外的事务并发问题,是互联网项目最常用的隔离级别。4.PHP中empty()函数的判断规则,以下结果为true的是()A.empty(0)B.empty(1)C.empty('00')D.empty(array(1))答案:A解析:empty()判定为空的场景包含:空字符串、0、0.0、null、空数组、字符串'0'。'00'不属于空值,empty('00')结果为false。5.以下Redis数据结构中,适合实现点赞、排行榜功能的是()A.StringB.ListC.SetD.ZSet答案:D解析:ZSet有序集合自带分值排序功能,可根据点赞数、分数自动排序,是实现排行榜、有序榜单的最优结构。Set适合去重,List适合队列、栈场景。6.防止SQL注入最核心、最安全的PHP操作方式是()A.使用addslashes转义字符串B.过滤特殊字符C.使用PDO预处理语句绑定参数D.关闭数据库报错信息答案:C解析:PDO预处理语句可彻底隔绝SQL注入,参数与语句分离,不受特殊字符绕过影响。字符转义、过滤存在绕过风险,无法彻底防护注入漏洞。7.PHP中static关键字修饰的静态方法,以下说法正确的是()A.必须通过实例化对象调用B.可以直接通过类名调用C.方法内可以直接使用$thisD.静态方法不能复用答案:B解析:静态方法属于类本身,无需实例化,可直接通过类名::方法名调用;静态方法内不能使用$this,仅可使用self、static关键字。8.查看Linux系统80端口占用进程的正确命令是()A.netstat-an|grep80B.ps-ef|grep80C.top|grep80D.curl127.0.0.1:80答案:A解析:netstat命令用于查看系统端口监听、连接状态,可精准查询端口占用情况;ps命令用于查询进程,无法直接定位端口;top为系统资源监控命令。9.以下关于Cookie和Session的区别,说法错误的是()A.Cookie存储在客户端,Session存储在服务端B.Session安全性高于CookieC.Cookie可以永久保存,Session会话结束自动销毁D.Session可以脱离Cookie独立运行答案:D解析:PHP默认通过Cookie存储SessionID来关联用户会话,默认无法脱离Cookie独立运行,仅可通过URL传参方式临时替代。10.PHP中读取文件内容效率最高的函数是()A.file_get_contents()B.fopen()+fgets()循环读取C.readfile()D.fscanf()答案:C解析:readfile()直接读取文件并输出内容,无需手动读写缓冲区,底层封装优化,单次读取效率高于file_get_contents,适合静态文件快速读取。二、填空题(每题4分,共20分)1.PHP中实现页面跳转的两种常用方式:________、________。答案:header()函数跳转、JS脚本跳转2.MySQL中用于去重查询的关键字是________,用于分页的关键字是________。答案:DISTINCT、LIMIT3.写出两个PHP数组遍历函数:________、________。答案:array_map、array_walk(答案不唯一,foreach、each亦可)4.Redis中设置键过期时间的两个命令是________、________。答案:EXPIRE、PEXPIRE5.防止CSRF攻击的核心解决方案是________。答案:令牌Token校验三、简答题(每题6分,共30分)1.列举6个PHParray_开头的常用函数,并简要说明功能。参考答案:①array_merge():合并一个或多个数组,后数组元素覆盖前数组同名键;②array_filter():过滤数组空值或指定条件元素,返回筛选后的新数组;③array_map():遍历数组,对每个元素执行回调函数处理;④array_keys():获取数组中所有键名,返回索引数组;⑤array_values():获取数组中所有值,重置数组索引;⑥array_unique():去除数组重复元素,保留首次出现的值。2.简述MySQL常用的三种存储引擎(InnoDB、MyISAM、Memory)的优缺点及适用场景。参考答案:①InnoDB:支持事务、行锁、外键、崩溃恢复,读写均衡,适合电商、用户、订单等核心业务表;缺点是全文索引支持较弱,占用资源略高。②MyISAM:查询速度快、占用资源少,不支持事务、行锁、外键,仅支持表锁;适合静态查询、日志、统计等读多写少、无需事务的场景。③Memory:数据存储在内存,读写速度极快,断电数据丢失,支持表锁;适合临时数据缓存、临时统计、高频短期查询场景。3.简述Redis和Memcached的核心区别。参考答案:①数据结构:Memcached仅支持String字符串类型;Redis支持String、List、Set、ZSet、Hash等多种数据结构,适配更多业务场景。②持久化:Redis支持RDB、AOF持久化,断电数据可恢复;Memcached无持久化功能,断电数据全部丢失。③内存管理:Redis采用惰性删除+定期清理机制回收内存;Memcached采用LRU缓存淘汰机制,内存利用率更高。④并发性能:Memcached基于多线程,高并发读性能优异;Redis基于单线程多路复用,无锁竞争,读写稳定性更强。4.简述PHP中Trait的作用及使用场景。参考答案:PHP仅支持单继承,一个类只能继承一个父类,Trait就是为了解决代码复用受限问题。Trait可以封装通用方法,被多个无继承关系的类引入使用,实现代码横向复用。适用场景:多个类需要共用相同的通用方法(如日志记录、数据校验、权限判断),无需重复编写代码,规避单继承局限。5.简述线上PHP接口响应缓慢的排查思路。参考答案:①排查网络与服务器:查看服务器CPU、内存、磁盘IO、带宽是否过载,端口、连接数是否异常;②排查数据库:分析SQL语句是否存在慢查询、索引失效、全表扫描、锁等待超时问题;③排查缓存:检查Redis/Memcached缓存命中率,是否存在缓存穿透、失效、击穿导致频繁查库;④排查代码:检查是否存在循环查询数据库、无效递归、文件读写阻塞、超时等待等低效代码;⑤排查第三方接口:校验调用的第三方接口是否响应延迟、超时,未做熔断重试处理。四、编程题(每题10分,共20分)1.使用PHP实现快速排序算法。参考答案代码:php
functionquickSort($arr)
{
//递归终止条件:数组长度小于等于1直接返回
$len=count($arr);
if($len<=1){
return$arr;
}
//选取基准值
$mid=$arr[0];
$left=$right=[];
//遍历数组,区分大小元素
for($i=1;$i<$len;$i++){
if($arr[$i]<=$mid){
$left[]=$arr[$i];
}else{
$right[]=$arr[$i];
}
}
//递归排序左右数组并合并
returnarray_merge(quickSort($left),[$mid],quickSort($right));
}
//测试调用
$testArr=[5,2,9,1,5,6];
print_r(quickSort($testArr));
解析:快速排序核心是分治思想,选取基准值,将数组分为左右两部分,递归排序后合并,时间复杂度最优O(nlogn),适合无序数组排序场景。2.编写PHP代码,实现遍历指定文件夹下所有文件及子文件夹,输出全部文件路径。参考答案代码:php
functionscanAllFile($path)
{
//判定目录是否存在
if(!is_dir($path)){
return[];
}
$fileList=[];
//打开目录
$dir=opendir($path);
//循环读取目录内容
while(($file=readdir($dir))!==false){
//过滤隐藏目录、当前目录、上级目录
if($file=='.'||$file=='..'){
continue;
}
$fullPath=$path.'/'.$file;
//判断是否为子目录,递归遍历
if(is_dir($fullPath)){
$childList=scanAllFile($fullPath);
$fileList=array_merge($fileList,$childList);
}else
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 全球物流行业分析报告
- 光明日报外卖行业分析报告
- 潍坊市高铁物流基地研究报告
- 基层微信群泛滥的原因及对策研究报告
- 知识图谱应用趋势研究报告
- 乡土文化与休闲农业结合研究报告
- 高中政治逻辑与思维《判断的概述》教学设计:基于核心素养的逻辑建构与思维升华
- 2026过程可视化软件行业用户付费意愿与定价策略研究
- 2026中国新能源EPC模式创新及工程成本控制与全生命周期管理研究
- 2026中国新能源汽车电池回收产业现状及投资价值评估报告
- 2026届高考语文考向核心卷含答案(全国二卷)
- 中石油招聘历年笔试真题(完整版含答案解析)
- 船边交货贸易术语课件
- 乒乓球馆转让合同范本
- 上海护理学副高面审题库及答案解析
- 调研县疾控中心工作报告
- 成都新和平科技有限公司25000t-a皮革助剂及20000t-a纺织助剂生产线项目环评报告
- 《脑电图的临床应用》课件
- TCAPC 009-2022零售药店经营乳腺癌治疗药品药学服务规范
- 溃坝计算完整版本
- 显微硬度的测定课件
评论
0/150
提交评论