腾讯面试(WEB高级应用开发工程师<PHP>)非答案啊!!!

开始正题之前,容博主啰嗦两句吧,呵呵。(你也可跳过直接到红色字体看题!)

腾讯一直是我很敬重的企业,尽管小企鹅在战略上饱受争议,正面的,负面的我就不一一列举了,但又怎样?在中国,他还是能如微软一样,渗透到每一个用户的日常生活中去,这样的成绩,恐怕在世界范围内也没有多少吧!想进去自然困难丛丛,面试周期达一个月之久。技术面试只占四分之一,剩下的都是人品关!我勒个去!你知道技术对鄙人还算凑活,可这RP,我是一直持保留意见的!不过话说回来,咱可以装么!说我就喜欢你们加班,你不加班,我跟你没完!阿门!

笔试(45 minute):(本来是四张纸,被我弄丢了一张!无伤大雅,难度级别不会有出入)

注意:由于时间紧迫和水平有限,难免有不足或错误,请指证,虚心学习!

[PHP]

写出PHP中至少5个全局变量,并说明其作用与用法。

1. $_GET :浏览器URL传递过来的QUERY部分,被PHP内核创建的全局变量。

2. $_POST:由HTTP提交(POST)过来的大文本内容,被PHP内核创建全局变量。

3. $_COOKIE :客户端保持机制所需的全局变量。

4. $_REQUEST :由以上三个变量的集合体。

5. $_SESSION :客户端与服务器端得保持机制所需变量。

写出PHP获取客户端与服务端得代码。

$_SERVER[‘REMOTE_ADDR’]

gethostbyname($_SERVER['HTTP_HOST']);

打印出前一天时间,格式:YYYY-MM-DD HH:II:SS

echo date(“Y-m-d H:i:s”,strtotime(“-1 day”));

说明include与require的区别是什么?为避免重复包含一个文件,会用?语句代替他们

1, 别包含脚本有错误时,抛出错误级别不同。前者为警告,并继续运行。后者为严重错误,并终止程序运行。

2, 返回值不同,前者有返回值,后者没有返回值

3, 前者可用于条件语句中,分支包含。后者不可。

4, include_once require_once

请写一个函数验证电子邮件的格式时候正确

<?php
function vaildate_eamil($email) {
if (empty($email))
return false; if (preg_match("/[0-9a-zA-Z-_]+@.[0-9a-zA-Z-_]+/", $email) !== false) return true; return false;
}
?>

使用php写一段简单的查询,查出所有姓名为“张三”的内容并打印出来

表名:User

Name Tel Content Date

张三 133336633666 大专毕业 2006-10-11

张三 136336633666 本科毕业 2006-10-15

张四 021-55665566 中专毕业 2006-10-15

根据上面要求完成代码:

<?php
$query = mysql_query("select * from User where Name='张三'"); while ($row = mysql_fetch_row($query)) { $result[] = $row;
} var_dump($result);
?>

判断一个变量是否设置函数是?判断一个变量是否为空函数是?

isset();empty();

请用PHP输出下面JSON代码,不能用字符串拼接来实现。

var jsonstr = {

	fruit : [
{
apple : ”苹果”
},
{
bana : ”香蕉”
}, ] }

//

<?php

$str = json_decode($jsonstr);

foreach ($str->fruit as $s) {

	echo $s->apple;

	echo $s->bana;
}
?>

请简单描述下PHP中session的存储方式以及如何操作session

PHP将session存储在server端,client端用cookie存储对应的sessionid用于保持。

PHP中由内核建立的全局变量$_SESSION用于存取session。使用前需用session打开session会话。

PHP中如何设置错误级别,分别说明在配置文件和代码中的设置方法

配置中

error_reporting =

代码中

error_reporting()函数

[MYSQL]

有一个游戏道具赠送的营销活动,每天有1000W用户参与量,需要提供给玩家查询一天的领奖记录。数据库设计时应该注意哪些点?

提示:

1.按每天3小时(10800秒)的峰值算,1秒的峰值会有近1000的访问。

2.假设赠送环节也是需要营销活动开发侧控制,赠送是调用游戏的接口发货,游戏借口提供给单活动的发货速度是100/s。

1,用户id为主键

2,时间与用户id建立联合索引,加快搜索某一用户一天内的记录

3,1000w数据量太多,要进行水平分表。分表依据为用户id。

4,加大my.cnf中的最大链接数。为1500吧

[C]

char x[]=”abcdefg”;

char y[] = {‘a’,’b’,’c’,’d’,’e’,’f’,’g’};

下面正确的是:

A,数组x和数组y等价。

B, 数组x和数组y的长度相同

C, 数组x的长度大于数组y的长度 正确

D,数组x的长度小于数组y的长度

char str = “Hello”;

char *p = str;

int n=10;

请计算

sizeof(str) = ? 6

sizeof(p) = ? 6

sizeof(n) = ? 4

void Func(char str[100]){

请计算 sizeof(str) = ? 100

}

char *p = malloc(100);

请计算

sizeof(p) = ? 100

[HTML]

请写出下面form在提交后的URL

<html>

<head>

<title>登陆</title>

</head>

<body>

<form action=?”login” method=?”get”>

<p>用户名<input type=text name=’name’ size=’10’ maxlength=’20’></p>

<p>密码<input type=passwd name=’pass’ ></p>

<p> <input type=submit name=’submit’ ></p>

</body>

</html>

上面的页面的url是http://www.qq.com/bbs/login.html中,如果在用户名输入username,口令输入:123456,请写出点击submit按钮后,在浏览器的显示地址的URL:?

如果将第四行的form提交方式method改为post了?

1,http://www.qq.com/bbs/login&name=username&pass=123456&submit=submit

2,http://www.qq.com/bbs/login

[UNIX]

尽量多的写出你所知道的UNIX中的信号量,以及其含义。

1, SIGHUP

退出系统发出的信号

2, SIGINT

程序中断发出信号,ctrl+c可触发

3, SIGQUIT

程序退出发出信号,会记录日志

5,SIGTRAP

中断或其他自陷指令

9,SIGKILL

结束程序,非阻塞,不可忽略

15,SIGTERM

结束程序,阻塞,会被忽略

17,SIGCHLD

子进程结束,父进程接受到此信号

运行命令ls –l 后显示下面结果

-rwxrwxrwx 1 root root 1393 jul 2 11:30 test

drwxr-xr-x 2 edit users 4096 jun 23 17:26 pay

上面每行中有7个部分表示的含义依次为:

1. 文件类型与权限

2. 文件外部被链接数。软、硬链接

3. 文件用户

4. 文件所属组

5. 文件大小

6. 文件创建日期

7. 文件名

第一行中的-rwxrwxrwx各个字母含义:

-文件类型,非目录

rwx:user拥有所有权限

rwx:group拥有所有权限

rwx:other拥有所有权限

第二行中的drwxr-xr-x各个字母含义:

d:表示为目录

rwx:user拥有所有权限

r-x:group拥有read与execute权限,无wirte权限

r-x:other拥有read与execute权限,无wirte权限

[口试]: (节选)

设计几个表,可以反映用户的权限。类似用户-角色-权限这样的模式

答:略

怎么查询一条sql是否启用了索引

答:explain

explain,可以看到索引级别,你知道索引级别是什么?有多少种?

答:额。。。这个不知道。

没了解过对吧?有8中级别。可以在explain中看到的。

答:是最后一个字段吗?我怎么记得好像是表示此次sql扫描的行数啊?

恩,是行数。也是级别(具体当时他怎么说的我现在有点记不住了,可能不是这么说的,反正就知道索引有个级别这玩意,在去google呗!)

答:哦,好像很厉害的样子!

分表算法中,怎么决定用哪一个整数去取余?类似若用电话号码的后四位来作文分表依据。我们准备分15张表。

答:15

分表的时候,分多少张表,有什么依据吗,我们怎么知道就要分15张表。

答:这个。。。不知道啊

换个说法,你知道Mysql中为了使一张表能很好工作时,应该将记录维持在多大数据量

答:几百万吧?

你没了解过对吧?额,在mysql中200w一张表可以良性工作。这样我们就知道该分几张表了。

答:哦,好像很厉害的样子!

说说mysql主从数据库架构

答:见我前面的面试文章,答过太多次了(做的推广,哈哈)

说说Mysql在设计上你所知道的所有优化方式

答:1:建立索引,不能太多。看where需求,能建立联合就建立联合,而后考虑建立单字段索引

2:分表或mysql5.1后的partition分区(没用过!)

3:字段类型能用char就不用varchar,能用varchar就不用text,字段长度要尽量接近需求,能为1的,不设置2,。。。

4:数据表的引擎,根据需求选择最优的

5:链接数过多,可适当增大mysql的最大链接数

6:mysql主从。做读写分离。

char和varchar的有什么区别

答:char是定长的,搜索快。Varchar不定长,在内部存储的时候,字段前几位会把长度先存下来,这样才能知道结束位置,不过这样也还是解决不了他慢的问题。这是我猜的,是不是它不定长,所以内部的算法是递推,然后就慢了?而char定长的,能实现O(1)的存取速度?

在css中,若有两个div,若想使他们有上下层叠的效果,怎么做

答:z-index

我们系统要用到css3,html5掌握怎么样。

答:还行

切过图么

答:没有,不会

摘自:http://www.lnmper.net/?p=21

【转】2012年7月12 – 腾讯公司 WEB高级应用开发工程师 最新面试题的更多相关文章

  1. 2012年7月12 – 腾讯公司 WEB高级应用开发工程师 最新面试题 [转]

    笔试(45 minute):(本来是四张纸,被我弄丢了一张!无伤大雅,难度级别不会有出入) 注意:由于时间紧迫和水平有限,难免有不足或错误,请指证,虚心学习! [PHP] 写出PHP中至少5个全局变量 ...

  2. 【转】2012年6月26 – PPS网络电视PHP工程师最新面试题

    每一次面试都是一场较量,和面试官,更是和你自己! 前言:虽然面试职位是PHP工程师,但题目仅绝非限于PHP,甚至都没有多少PHP的题!inner peace!希望能给你带了一丝帮助. PPS网络电视面 ...

  3. 【转】2012年6月26 – 盛大PHP工程师最新面试题

    无笔试. 口试:(前半部分平淡无奇,没什么太难的问题,都是求职岗位基本要会的东西,局限于php.下面是真正进入状态的题.) 谈谈观察者模式是什么?主要应用. 答:类似会有一些server对象时刻侦听某 ...

  4. 【转】2012年6月25 – 某欧美上市企业PHP工程师最新面试题

    笔试: 尼玛,连页眉页脚都是英文!不过都还能读懂.题目很简单.印象深刻的有几题. 具体题目忘了,主要知识点考点是,建立的视图,实现有自增字段. 答:之前还真没考虑过这个问题.当时条件发射,给了一个用户 ...

  5. QQ 腾讯QQ(简称“QQ”)是腾讯公司开发的一款基于Internet的即时通信(IM)软件

    QQ 编辑 腾讯QQ(简称“QQ”)是腾讯公司开发的一款基于Internet的即时通信(IM)软件.腾讯QQ支持在线聊天.视频通话.点对点断点续传文件.共享文件.网络硬盘.自定义面板.QQ邮箱等多种功 ...

  6. 10月12号 晚八点 Speed-BI 云平台-基于Excel数据源的管理驾驶舱构建全过程,腾讯课堂开课啦

    认真地做了一大摞一大摞的报表,老板没时间看?努力把能反馈的内容都融汇进图表里,老板嫌复杂?做了几个简单的报表,老板一眼就觉得信息不全面?每个报表都用了各种各样的图表,老板却毫无兴趣?明明很努力了,为什 ...

  7. [Erlang 0114] Erlang Resources 小站 2013年7月~12月资讯合集

    Erlang Resources 小站 2013年7月~12月资讯合集,方便检索.     附 2013上半年盘点: Erlang Resources 小站 2013年1月~6月资讯合集    小站地 ...

  8. Swift 3.0首个开发者预览版将在5月12日释出

    Swift团队在博客中宣布Swift 3.0语言首个开发者预览版将于5月12日释出,正式版将在4-6周之后推出.开发者预览阶段并无确定的更新周期和计划,不过Swift团队称努力将其控 制在4-6周内. ...

  9. 系列文章:老项目的#iPhone6与iPhone6Plus适配#(持续更新中,更新日期2014年10月12日 星期日 )

    本文永久地址为http://www.cnblogs.com/ChenYilong/p/4020399.html ,转载请注明出处. ********************************** ...

随机推荐

  1. centos 6.5配置ftp服务器,亲测可用

    设置开机启动 1 chkconfig vsftpd on 启动服务 1 /sbin/service vsftpd start 配置FTP用户组/用户以及相应权限 添加用户组 1 groupadd ft ...

  2. spring(四)之基于注解(Annotation-based)的配置.md

    注解 这里讲的注解有下面几个 @Autowired @Qualifier(" ") @Genre(" ") @Offline @Resource(name=&q ...

  3. 详述Linux配置静态IP、设置DNS和主机名(一)

    Linux配置静态IP.设置DNS和主机名首先要找到配置文件,这是在Linux系统下进行工作的必须知道工作方式.后面一步步的跟着这个范例来进行配置相信你最终也会完成Linux配置静态IP.设置DNS和 ...

  4. HTML+CSS图文排版

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  5. 第七章 用户输入和while语句

    大多数编程都旨在解决最终用户的问题,为此通常需要从用户那里获取一些信息.例如,假设有人要判断自己是否到了投票的年龄,要编写回答这个问题的程序,就需要知道用户的年龄,这样才能给出答案.因此,这种程序需要 ...

  6. Windows Azure 初体验

    最近看到windows azure 在做活动,只需花一块钱就可以体验一个月的windows azure. 于是,我就注册了一个账号也尝试一把云时代,传送门. 注册很简单的,成功后可以看到这个界面. 然 ...

  7. Codeforces Round #222 (Div. 1) 博弈 + dp

    一般这种要倒着来. #include<bits/stdc++.h> #define LL long long #define fi first #define se second #def ...

  8. python3 怎么统计英文文档常用词?(附解释)

    # coding: utf-8 # In[32]: #import requests #from bs4 import BeautifulSoup #res = requests.get(" ...

  9. angular4 动态Form中获取表单字段并在页面中使用的方法

    主要有两种方式 第一种 使用get属性 页面中使用如下: 第二种 使用普通方法事件  页面中使用如下 *转载请附出处

  10. Java switch case和数组

    Java switch case 语句 switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支. 语法 switch case 语句格式: switch(express ...