今天php中文网的小编在路上偶然听到面试的问题,于是就心血来潮给大家整理了一下php面试经常出现的10个问题,大家有时间可以看看。
相关推荐:2019年PHP面试题大汇总(收藏)
1.nginx使用哪种网络协议?
答:nginx是应用层,我觉得从下往上的话,传输层用的是tcp/ip,应用层用的是http,fastcgi负责调度进程!
2.eho,print,print_r的区别?
答:echo是语言结构,无返回值;print功能和echo基本相同,不同的是print是函数,有返回值;print_r是递归打印,用于输出数组对象。
3.PHP有哪些特性?
答:①.php独特混合了C,Java,Prel以及PHP自创的语法.
②.可以比CGI或者Prel更快速去执行动态网页,与其他变成语言相比,PHP是讲程序嵌入到HTML文档中去执行,执行效率比完全生成HTML编辑的CGI要高很多,所有的CGI都能实现.
③.支持几乎所有流行的数据库以及操作系统.
④.PHP可以使用C,C++进行程序的扩展.
4.求数组中最大数的下标?
答:1.functionmaxkey($arr){
2.$maxval=max($arr);3.foreach($arras$key=>$val){4.if($maxval==$val){5.$maxkey=$key;6.}7.}8.return$maxkey;9.}
10.$arr=array(0,-1,-2,5,"b"=>15,3);11.echomaxkey($arr);
输出:b
5.对于大流量的网站,您采用什么样的方法来解决访问量问题?
答:①.有效使用缓存,增加缓存命中率.
②.使用负载均衡.
③.对静态文件使用CDN进行存储和加速.
④.想法减少数据库的使用.
⑤.查看出现统计的瓶颈在哪里.
6.谈谈asp,php,jsp的优缺点?
答:①asp是需要依赖IIS,是微软开发的语言
②.php和jsp可以依赖apache或者nginx等其他服务器
7.简述两种屏蔽php程序的notice警告的方法?
答:初始化变量,文件开始设置错误级别或者修改php.ini设置error_reportingset_error_handler和@抑制错误:
①在程序中添加:error_reporting(E_ALL&~E_NOTICE);②.或者修改php.ini中的:error_reporting=E_ALL改为:error_reporting=E_ALL&~E_NOTICE③.error_reporting(0);或者修改php.inidisplay_errors=Off
8.下面哪个选项没有将john添加到users数组中?(B)
(A)$users=‘john';(B)array_add($users,'john');(C)array_push($users,‘john');(D)$users||=‘john';
9.写一个函数,尽可能高效的,从一个标准url里取出文件的扩展名?
答:例如://www.sina.com.cn/abc/de/fg.php?id=1需要取出php或.php?
$url="//www.sina.com.cn/abc/de/fg.php?id=1"; arr=parseurl(url); pathArr=pathinfo(arr['path']); print_r($pathArr['extension']);
10.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹?
答:如下.
functionaGetAllFile($folder) { $aFileArr=array; if(is_dir($folder)) { handle=opendir(folder); while((file=readdir(handle))!==false) { //如果是.或者..则跳过 if(file=="."||file=="..") { continue; } if(is_file(folder."/".file)) { aFileArr=file; } elseif(is_dir(folder."/".file)) { aFileArr[file]=aGetAllFile(folder."/".file); } } closedir($handle); } return$aFileArr; } $path="/home/test/sql";
以上是2019春季面试IT公司常用到的10个PHP面试题!的详细内容。更多信息请关注PHP中文网其他相关文章!