面试高级phpphp高级工程师标准,一般会问到哪些问题

2015奇虎360的 PHP工程师面试题汇总 - 乔布简历
打开微信,扫描二维码
点击微信右上角,分享到朋友圈
1、你自己感觉答题怎么样。考你信心,也整体探你的底。
当然要自信的回答你答的好的部分,没答好的也要谦虚地说出来。
2、如何请求远程url的内容,当远程服务器关闭了怎么办。
两种请求方法,file_get_content和curl,后面是问你出错的解决方式,在正式业务中不能直接停止业务,要返回具体的错误信息。
3、memcache有没有用过,在什么地方用。
当然用过,在论坛中,新帖,排行,最近回复,商品分类,等等,每次登录都要从数据库抓取的信息,最好都放在memcache。
4、当我说道将编译的view模版放到memcache时,面试官问我这些数据的放多长时间,如果时间长了,memcache很耗费内存。
memcache创建key的时候都指定了生命周期,memcache自己处理回收。还有当用户退出时,这个用户相关的页面缓存将被清扫一次,防止缓存垃圾。
5、memcache与redis区别,与mongodb区别,举例说明使用场景。
memcache无法持久化,数据都在内存中,redis和mongodb可以静态存储到磁盘上,但不是实时同步的。更具体的请读者自己查阅资料。
6、“abc”和“cba”和“bac”等等是兄弟单词,现在有一个上万单词的词典,给你一个单词,如何找出词典中所有的兄弟单词。
统计词典中每个单词的字母频度,形成hash表,在此hash表中查找目标单词频次一样的单词映射。
总结:面试的时候比较轻松,一般不少PHP和sql相关的问题,也问了点简单的算法问题和之前做过的项目,有什么难度和亮点等等。如何面试 PHP 工程师? - 知乎1842被浏览231375分享邀请回答就有加分)问一问ta最近看的书问一问ta的职业规划,喜欢做什么,对工作环境有什么要求别出生僻的题,别为难人家,更不要变相的侮辱人家,正常交流为主,你要的是一个正常的人,优秀不优秀就看你的眼光和运气了。很多公司的技术人员招聘会刻意追求刺激的问题,比如很著名的微软的“下水道的盖子为什么是圆的”,不是说这些考察毫无道理,但更多的是一种“marketing”的手段。
/ 26647 条评论分享收藏感谢收起PHP高级工程师面试题目
我的图书馆
PHP高级工程师面试题目
1、平时喜欢哪些php书籍及博客?CSDN、虎嗅、猎云 2、js闭包是什么? 3、for与foreach哪个更快? 4、php鸟哥是谁?能不能讲一下php执行原理? 5、php加速器有哪些?apc、zend、xcache.....能不能讲一下它的加速原理? 6、Node.js能彻底代替php+apache是扯淡。 7、怎样判断一个值是否存在于数组中?in_array(),array_key_exists,...... 8、怎样判断select语句中是否使用了索引?explain 9、sphinx的中文分词词库使用第三方库还是自己建库? 10、如果一个被面试者经验少、基础差,此时却问些高深的知识。要怀疑它的稳定性,可以提问加班对他会不会有抵触。 11、mysql与mysqli的区别有哪些? 12、将来的发展方向?安全、还是数据挖掘、大数据处理? 13、php的面向对象:类的修饰符、封装、继承、多态体现方面 14、php 多态是什么?15、Type Hinting:http://www.php.net/manual/en/language.oop5.typehinting.php 16、php的设计模式:单例模式、工厂模式、生产者模式......等23种 17、服务器状态码:200、202、301、404、500...... 18、i++与++i的区别? 19、项目开发:电商项目中的购物车数据持久化、考试系统的安全性考虑、 20、mysql设计基础:三大范式、功能-&思维导图、创建表的第一字段是什么? 21、mysql字段char、varchar、int、smallint、tinyint、mediumint、bigint、decimal、double、float字节数及应用场景。 22、memcache与mongoDB、Redis各自的使用场景是什么? 23、为什么mongoDB与Redis非但没有形成竞争反而是互补关系? 24、Redis数据类型有哪些?int、string、hash、set、list ?25、安装linux软件时使用make方式还使用yum方式? 26、linux网络优化:查看进程ps -aux|grep mysqld、怎样查看最大文件打开数? 27、C语言中的虚函数是什么? 28、1条微薄要推送给100万个粉丝该怎么处理? 29、知道哪些算法?冒泡排序?快速排序?二分查找法?30、yii thinkphp ci 各自优点31、php 设计模式有哪些?32、c 排序算法有哪些?33、php 基本结构是什么? 34、memcache magent 分布式设计?35、redis 分布式设计,如何设计?36、mongo 集群架构是怎样的?37、mysql 索引原理及sql性能优化38、tcp/ip 网络协议,osi7层指是什么?39、php 处理大数据业务40、linux 应用 负载性能查看 ?41、nginx 实战优化业务功能 ?42、谈一下近三年来你的得意之作?43、看看简历,会问一些过去做的项目的用户量、pv、吞吐量、相关难点和解决方法等44、数据库设计经验,为什么进行分表? 分库?45、一般多少数据量开始分表? 分库? 分库分表的目的? 什么是数据库垂直拆分? 水平拆分? 分区等等?可以举例说明46、数据库优化有哪些? 分别需要注意什么?47、web开发方面会遇到哪些缓存? 分别如何优化?48、给你256M的内存,对10G的文件进行排序(文件每行1个数字),如何实现?49、对10G的文件进行查找如何实现?50、统计10G文件每个关键字出现的次数如何实现?51、假如你现在是12306火车订票的设计师,你该如何设计满足全国人民订票?52、假如有1亿用户的访问量,你的服务器架构是怎样的? 用户信息的存储方案如何设计?53、如果你是技术组长,所带团队任务进度无法完成你该如何解决?54、如果在进度排满的前提下插入任务,你该如何保证总进度不延期?55、如果有的工程师今天预定任务没有完成,你该如何解决?56、从你的经验方面谈一下如何构建高性能web站点? 需要哪些环节? 步骤? 每个步骤需要注意什么如何优化等?57、为什么要对数据库进行主从分离?58、如何处理多服务器共享session?59、一个10G的表,你用php程序统计某个字段出现的次数,思路是?60、会告诉你一个nginx日志例子,用你认为最佳的编程语言统计一下http响应时间超过1秒的前10个url?61、给你一个mysql配置文件,用你认为最佳的编程语言解析该文件?62、给你两个路径a和b,写一个算法或思路计算a和b差距几层并显示a和b的交集?63、给你一个url,在nginx配置一下rewrite指定到某个具体路径?64、一个php文件的解释过程是? 一般加速php有哪些? 提高php整体性能会用到哪些技术?65、session和cookie生存周期区别? 存储位置区别?66、require、include、require_once、include_once区别? 加载区别? 如果程序按需加载某个php文件你如何实现?67、chrome号称为多线程的,所以多线程和多进程的区别为?68、php在2011年底出现hash碰撞,hash碰撞原理为? 如何进行修复?69、web不安全因素有哪些? 分别如何防范?70、假如两个单链表相交,写一个最优算法计算交点位置,说思路也可以?71、假如你是技术组长? 如何提高团队效率?72、nginx负载均衡有哪些? 如果其中一台服务器挂掉,报警机制如何实现?73、不优化前提下,apache一般最大连接数为? nginx一般最大连接数为? mysql 每秒insert ? select ? update ? delete?74、mysql 数据类型有哪些 ? 分别占用多少存储空间 ?75、nginx设置缓存js、css、图片等信息,缓存的实现原理是?76、如何提高缓存命中率? 如何对缓存进行颗粒化?77、php的内存回收机制是?78、我的所有问题都问完了(当然没有这么多),你有什么问题问我没有?
TA的最新馆藏[转]&[转]&
喜欢该文的人也喜欢400-650-7353
培训就业学员就业面试技巧培训讲师职业测评
2017PHP都有哪些常见面试题?
2017PHP都有哪些常见面试题?
18:59:59 来源:
2017PHP都有哪些常见面试题?下面优就业的老师给大家介绍一下。
1、双引号和单引号的区别
双引号解释变量,单引号不解释变量
双引号里插入单引号,其中单引号里如果有变量的话,变量解释
双引号的变量名后面必须要有一个非数字、字母、下划线的特殊字符,或者用{}讲变量括起来,否则会将变量名后面的部分当做一个整体,引起语法错误
双引号解释转义字符,单引号不解释转义字符,但是解释'\和\\
能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断)
2、HTTP中POST、GET、PUT、DELETE方式的区别
HTTP定义了与服务器交互的不同的方法,最基本的是POST、GET、PUT、DELETE,与其比不可少的URL的全称是资源描述符,我们可以这样理解:url描述了一个网络上资源,而post、get、put、delegate就是对这个资源进行增、删、改、查的操作!
2.1表单中get和post提交方式的区别
get是把参数数据队列加到提交表单的action属性所指的url中,值和表单内各个字段一一对应,从url中可以看到;post是通过HTTPPOST机制,将表单内各个字段与其内容防止在HTML的head中一起传送到action属性所指的url地址,用户看不到这个过程
对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据
get传送的数据量较小,post传送的数据量较大,一般被默认不受限制,但在理论上,IIS4中最大量为80kb,IIS5中为1000k,get安全性非常低,post安全性较高
GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作,结果都是一样的。
与GET不同的是,PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行多少次PUT操作,其结果并没有不同。
POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,就像数据库的操作一样,会创建新的内容。几乎目前所有的提交操作都是用POST请求的。
DELETE请求顾名思义,就是用来删除某一个资源的,该请求就像数据库的delete操作。
3、PHP介绍
Hypertext Preprocessor----超文本预处理器
Personal Home Page 原始名称
目标用途: 允许web开发人员快速编写动态生成的web页面,与其他页面相比,PHP是将程序嵌入到HTML文档中去执行,效率比完全生成HTML编辑的CGI高很多
HTML: Hypertext Markup Language
创始人: 拉姆斯勒&勒多夫Rasmus Lerdorf,1968年生,加拿大滑铁卢大学
勒多夫最开始是为了维护个人网页,用prel语言写了维护程序,之后又用c进行了重写,最终衍生出php/fi
将PHP/FI公开释出
1995 php2.0,加入了对MySQL的支持
1997 php3.0
2000 php4.0
2008 php5.0
由于php6.0没有完全解决Unicode编码,所以基本没有生产线上的应用,基本只是一款概念产品,很多功能已经在php5.3.3和php5.3.4上实现
常见的IDE(Intergrated Development Environment): 集成开发环境
Adobe Dreamweaver
常见文本编辑器,具备代码高亮:
SublimeText
php独特混合了C,Java,Prel以及PHP自创的语法
可以比CGI或者Prel更快速去执行动态网页,与其他变成语言相比,PHP是讲程序嵌入到HTML文档中去执行,执行效率比完全生成HTML编辑的CGI要高很多,所有的CGI都能实现
支持几乎所有流行的数据库以及操作系统
PHP可以使用C,C++进行程序的扩展
开放源代码
PHP技术应用:
静态页面生成
数据库缓存
div+css w3c标准
Smarty模块引擎
PHP认证级别
初级 IFE:Index Front Engineer 前端工程师
中级 IPE:Index PHP Engineer PHP工程师
高级 IAE:Index Architecture Engineer 架构工程师
4、echo、print_r、print、var_dump之间的区别
* echo、print是php语句,var_dump和print_r是函数
* echo 输出一个或多个字符串,中间以逗号隔开,没有返回值是语言结构而不是真正的函数,因此不能作为表达式的一部分使用
* print也是php的一个关键字,有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false
* print_r 可以打印出复杂类型变量的值(如数组、对象)以列表的形式显示,并以array、object开头,但print_r输出布尔值和NULL的结果没有意义,因为都是打印&\n&,因此var_dump()函数更适合调试
* var_dump() 判断一个变量的类型和长度,并输出变量的数值
5、HTTP状态码
点击这儿查看HTTP状态码详解
常见的HTTP状态码:
200 - 请求成功
301 - 资源(网页等)被永久转义到其他URL
404 - 请求的资源(网页等)不存在
505 - 内部服务器错误
6、什么是魔术引号
魔术引号是一个将自动将进入PHP脚本的数据进行转义的过程,最好在编码时不要转义而在运行时根据需要而转义
7、如何获取客户端的ip(要求取得一个int)和服务器ip的代码
客户端:$_SERVER[&REMOTE_ADDR&];或者getenv('REMOTE_ADDR')
ip2long进行转换
服务器端:gethostbyname('')
8、使用那些工具进行版本控制
cvs、svn、vss、git
9、优化数据库的方法
MySQL数据库优化的八大方式(经典必看)点击获取
选取最适用的字段属性,尽可能减少定义字段宽度,尽量把字段设置NOTNULL,例如'省份'、'性别'最好适用ENUM
使用连接(JOIN)来代替子查询
适用联合()来代替手动创建的临时表
锁定表、优化事务处理
适用外键,优化锁定表
优化查询语句
10、是否使用过模板引擎?使用的模板引擎的名字是?
Smarty:Smarty算是一种很老的PHP模板引擎了,它曾是我使用这门语言模板的最初选择。虽然它的更新已经不算频繁了,并且缺少新一代模板引擎所具有的部分特性,但是它仍然值得一看。
微信二维码
QQ群二维码
微博二维码
免责声明:本文来源于网络,由网友提供或网络搜集,仅供个人交流学习参考使用,不涉及商业盈利目的。如有版权问题,请联系本站管理员予以更改或删除。谢谢合作!
热门标签:
在线学习 ● APP下载
微信扫一扫
400-650-7353 您现在的位置:&&>>&&>>&&>>&腾讯php开发工程师面试问题正文
腾讯php开发工程师面试问题
腾讯php开发工程师面试问题
作者/编辑:佚名
  腾讯PHP开发工程师问题
  一、PHP开发部分
  1.合并两个数组有几种方式,试比较它们的异同
  2.请写一个函数来检查用户提交的数据是否为整数(不区分数据类型,可以为二进制、八进制、十进制、十六进制数字)
  3.PHP的strtolower()和strtoupper()函数在安装非中文系统的服务器下可能会导致将汉字转换为乱码,请写两个替代的函数实现兼容Unicode文字的字符串大小写转换
  4.PHP的is_writeable()函数存在Bug,无法准确判断一个目录/文件是否可写,请写一个函数来判断目录/文件是否绝对可写
  5.PHP的chmod()函数存在Bug,无法保证设置成功,请写一个函数在指定路径下创建一个目录/文件并确保可以正确设置权限掩码
  6.PHP处理上传文件信息数组中的文件类型$_FILES['type']由客户端浏览器提供,有可能是黑客伪造的信息,请写一个函数来确保用户上传的图像文件类型真实可靠
  7.PHP通过对数据的URL编码来实现与Javascript的数据交互,但是对于部分特殊字符的编解码与Javascript的规则不尽相同,请具体说明这种差异,并针对UTF-8字符集的数据,写出PHP的编解码函数和Javascript的编解码函数,确保PHP编码数据可以被 Javascript正确解码 、Javascript编码的数据可以被PHP正确解码
  8.试阐述Memcache的key多节点分布的算法?当任一节点出现故障时PHP的Memcache客户端将如何处置?如何确保Memcache数据读写操作的原子性?
  9.如何实现PHP的安全最大化?怎样避免SQL注入漏洞和XSS跨站脚本攻击漏洞?
  10.请设计一个数据结构可以实现无限级子菜单的树型菜单功能并提供菜单生成算法,用UML描述设计并写出相关PHP代码
  二、系统相关部分
  1.请简述Linux、FreeBSD、Soalaris、Mac OS、Windows几种系统下进程与线程的内核实现方式、机制的异同
  2.请简述Linux/BSD系统下进程间通讯的方式有哪些,并具体说明在PHP下如何实现
  3.请简述Linux/BSD系统下系统的/事件异步通知机制有几种,并加以比较
  4.简单比较TCP/UDP协议的异同,对于PHP的Socket扩展与Stream扩展,试比较两者基于TCP/UDP协议的SOCKET编程差异?
  5.为什么会出现僵死进程(孤儿进程)?怎样查看僵死进程?如何解决僵死进程问题?
  6.对于System-V消息队列,如何解决系统本身对于消息队列条数、总容量(字节数)的限制?如何设置消息的优先级别?请比较阻塞模式和非阻塞模式的异同,并说明如何避免非阻塞模式下的消息队列堵塞?
  7.请描述Apache 2.x版本的MPM(Multi-Processing Module)机制,并具体说明在不同的MPM机制下如何支持PHP?
  8.请简述PHP在Apache下的几种运行方式并加以比较?如何让PHP在Linux+Apache下以Fast CGI方式运行?
  9. 请写出让PHP能够在命令行下以脚本方式执行时安装PHP所必须指定的configure参数,并说明如何在命令行下运行PHP脚本(写出两种方式)同时向PHP脚本传递参数?
  10.请简述PHP 5.2的内存池及其内存管理机制、垃圾回收机制
  腾讯PHP开发工程师问题
  1 . 请对 POSIX 风格和兼容 Perl 风格两种正则表达式的主要函数进行类比说明
  ereg preg_match
  ereg_replace preg_replace
腾讯php开发工程师面试问题2    〖预览〗
  下面unjs小编来分享PHP程序员的岗位职责,岗位要求和发展方向给大家。
  PHP程序员岗位职责:
  1、负责协助技术总监进行技术评测,bug处理,代码开发;
  2、负责网站数据库、栏目、程序模块的设计与开发;
  3、负责根据公司要求进行erp、oa、crm系统等项目开发;
  4、按时按质完成公司下达程度开发、系统评测等工作任务;
  5、定期维护网站程序,处理反馈回来的系统
  6、网站程序开发文档的编写。
  PHP程序员岗位要求:
  1、良好的代码习惯,要求结构清晰、命名规范、逻辑性强、代码冗余率低;
  2、熟悉Mysql,有较为熟练地掌握mysql语言及编写存储过程、触发器等数据库开发的能力;
  3、精通PHP语言,精通CGI标准和HTTP等互联网协议;
  4、熟练掌握javascript、div+css等web前端布局及多浏览器兼容相关技术;
  5、英文水平过硬,能基本不借助字典快速阅读英文文档;
  6、熟练使用Linux或UNIX系统,熟悉在Linux、UNIX下配置php+mysql的运行环境;
  7、有良好的沟通、协调能力和学习能力,具备良好的团队合作精神,对工作积极严谨踏实,能承受较大的工作压力。
  PHP程序员发展方向:
……【】腾讯php开发工程师面试问题3    〖预览〗
  你想进名企吗?你打算应聘腾讯公司吗?下面是unjs小编分享的腾讯HR实习笔试群面经验,供大家参考。
  本人坐标广州,企业管理17届毕业生,女,研究生,面试2016鹅场暑期HR实习生,经过了笔试+性格测试+群面+一面,今天止步一面。
  本文主要分为以下五个板块:选择鹅场的理由 、笔试及性格测试经验、小组讨论群面个人体会、一面经验分享等。
  关于选择
  选择鹅厂,理由就不用多说了,在做出选择之前,你要明白几个问题:
  1.为什么你要选择HR岗位?(同理其他岗位如此)
  2.你是否具备了这个岗位所要求的能力和素质?
  3.你为什么选择互联网行业而非其他行业?
  4.你为什么要选择互联网行业中的鹅厂而非其他企业?
  请你好好对自我进行认知,然后就这几个点,总结出你的答案,任何模拟两可,或者碰运气来试试的理由或想法都不能帮助你坚持到最后。
  1.关于笔试的帖子非常多,大同小异,都是行测类题目,个人觉得,如今公务员,银行,事业单位,大企业无一另外都是行测,所有练好行测,打遍天下无敌手。
  2.鹅厂笔试两类题目,一类行测题,包括图表分析,图形推理,言语理解,背景都是互联网行业的数据;二类是附加题,不管题目如何变,关键掌握的点是&如何进行产品设计&rdq……【】腾讯php开发工程师面试问题4    〖预览〗其实最简单的方法就是看价格,如果你是从正规渠道购买,那价格便宜的就必然是官翻机,当然,如果是正规渠道,也不需要你去猜,直营店就会这样告诉你,而如果你想从非正规渠道购买手机,那么想要验证是否被商家忽悠,也可以用以下几种方法进行简单的判定:官翻iPhone价格与回收价格:1、目前苹果官翻iPhone仅有iPhone5s,iPhone5c,iPhone5s,iPhone4s和iPhone4等机型,所以iPhone6用户无需担心翻新机。2、首先是从包装盒来看,与置换机只有一个单机头不同,官翻机出厂时带有包装,同时搭配了全新的配件,且盒子正面印有“Apple CertifiedPre-Owned”。3、其次是看手机的序列号,方法是进入手机设置,然后点通用,再点关于本机,点序列号,序列号一般都会以C7G、C3K、CCP、DYJ、DQG、DQJ、C28、DQH、C3M这样的字母开头。其中C7G、C3K、C3M、CCP为大陆GSM版售后换机,DYJ为CDMA版(电信版)售后换机,DQG、DQH开头的机子涵盖比较广,美版,韩版,港版都有,因为港版序列号比较多,所以可以确定港版DQG、DQH开头的机子为官翻机。DQJ多为韩国售后换出的机子,而很多C28开头的美版机子,多为官方无锁型号,在售后GSX系统查出来也一定是有更换记录的,所以这部分……【】腾讯php开发工程师面试问题5    〖预览〗对于日版、美版iPhone6/6 Plus还是需要先把它解锁才能够正常使用国内网络,下面我们就来学习一下有锁版iPhone6/6Plus不越狱解锁使用国内移动/联通/电信4G网络教程。【有锁版iPhone6/6 Plus不越狱解锁移动/联通/电信4G教程】电信卡贴模式CDMA 4G具体方法步骤:1、忽略所有已连入wifi,裸卡插入手机;2、跳出激活界面后看到左上角《。。。。。4G》标志;3、重启,注意关节后拔出卡,裸卡+卡贴插入手机;4、拔掉数据线后开机左上角出现《。。。。。中国电信4G》标志;5、注意,不要滑动选择WIFI,电脑端打开iTunes然后用数据线连上手机。几秒后手机会自动进入桌面。(如果有id锁的同学请在电脑上输入你的Apple ID)中国移动、联通卡贴模式选择TMSI 2G 3G 4G具体方法步骤:1、安装任何3to2软件 推荐 Xpp的或者 移动 或者联通的 都可以 联通的是safari打开 下载安装;2、安装后选择2G(卡贴+卡此时)此时手机左上角 显示 无服务;3、忽略所有已连入wifi,裸卡插入手机;4、跳出激活界面后看到左上角《。。iPhone6怎么解锁?iPhone6怎么解锁?。。。E》标志;5、关机后,卡贴+卡插入手机开机,左上角《。。。。。中国联通4G》;6、注意,不要滑……【】
  〔腾讯php开发工程师面试问题〕
  腾讯php开发工程师面试问题所属栏目:〖〗
  “腾讯php开发工程师面试问题”相关:
  〖〗链接地址:
  资料共享平台提供的腾讯php开发工程师面试问题由网友原创或转发,若腾讯php开发工程师面试问题侵犯了您的权益,请与本站联系,谢谢!
上一篇范文: 下一篇范文:
腾讯php开发工程师面试问题相关范文}

我要回帖

更多关于 php高级工程师面试题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信