腾讯php面试问题

腾讯php面试问题

php程序员通常会遇到的面试问题:

1.基础知识点

HTTP协议中几个状态码的含义:503 500 401 200 301 302。

包含要求include _ once要求_ once。

PHP/Mysql几个版本的进化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改进。

HEREDOC简介

写一些php的神奇方法;

编译php时的一些配置参数

向php传递参数的两种方法。

(mysql)请写出数据类型(int char varchar datetime text)的含义;varchar和char有什么区别?

使用了错误报告和其他调试功能。

你用过版本控制软件吗?如果是,您使用的版本控制软件的名称是什么?

posix和perl标准中正则表达式的区别:

Safe_mode开启后限制在哪里?

写代码解决多个进程/线程同时读写一个文件的问题。

写一个上传文件的代码。

Mysql的存储引擎,myisam和innodb的区别。

2.web架构、安全性、项目经验

介绍了xdebug、APC、EACelerator、XCache、Zendott的使用经验。

当服务器上没有物理文件/archivers/567.html时,使用mod_rewrite重定向到index.php?Id=567,请先打开mod_rewrite。

以MySQL数据库作为发布系统的存储,每天5万多篇文章的增量。估计要运营三年。怎么优化呢?

写一个排序算法(原理),告诉怎么优化。

请简要说明你最自豪的开发工作

对于高流量的网站,你用什么方法解决页面流量统计的问题?

你用过模板引擎吗?如果是,您使用的模板引擎的名称是什么?

请介绍一下Session的原理,大型网站应该注意什么?

测试php性能和mysql数据库性能的工具,以及寻找瓶颈的方法。

定期把所有的链接放在一个网页上。

介绍常见SSO(单点登录)方案的原理(如dedecms集成discuz passport)。

你写过的PHP框架的特点,主要解决什么问题,和其他框架的区别。

大型论坛/新闻文章系统/SNS网站在性能优化上有什么区别?

相册应用:要求在浏览器中可以同时选择多个文件上传,图片可以剪切,压缩包在服务器端解压。可以上传单个文件高达50M。上传过程中会显示一个进度条。每张图片可以生成四种大小的缩略图,视频文件要转换成flv供flash播放。描述各种开源软件和要涉及的简单用途。

一群猴子围成一个圈,按1,2,?,n依次编号。然后从1开始数,数到m,踢出圈,从后面数,数到m,踢出去?以此类推,直到只剩下一只猴子,那只猴子被称为国王。需要编程模拟这个过程,输入m和n,输出最后一个国王的数字。用程序模拟了这一过程。

3.UNIX/Linux的基本使用

linux下查看当前系统负载信息的几种方法。

Vim的基本快捷键。

Ssh安全增强方法;密码模式和rsa密钥模式的配置。

Rpm/apt/yum/ports打包、查询和删除的基本命令。

Makefile的基本格式,gcc编译,连接的命令,-O0和-O3的区别。

GDB、斯特拉斯和沃金的基本用法。

4.前端,HTML,JS

Css盒子模型。

javascript中的原型。

javascript中该对象的范围。

IE和火狐事件冒泡的区别。

什么是怪异模式,标准模式和近标准模式?

DTD的定义

IE/firefox中普遍使用Hack

firefox,IE,IE下的前端js/css调试工具。