面试之路

一、对于从没面试过的朋友来说,第一次的面试应该是相当的忐忑不安的,时刻担心着面试官会不会问到一些自己没见过的内容,如果遇到了这样的问题自己该怎么办。而我就是在这样不安的情况下进行了面试。可是与我的恐怖想象完全相反,第一场面试相当的轻松,让我几乎认为这只是一个小的见面会。面试过程如下:

1、hr给了一张个人信息表和一张试题卷

2、试题大致内容:一个考试测评系统,试题格式为选择题,试题库不限量,可以无限添加,当测试人员开始测试时,随机从试题库中抽取50道。设计数据库和系统实现方案。

3、技术总监和hr 的一些小问题。

然后面试就结束了,在满怀不可思议的心情中走出了大厦。

二、有了第一次的面试经历,虽说没经历想象中的心惊胆战的事,但是也不那么紧张了,心情稍微淡然了一些。

下午两点半的面试,我提前两个小时出发(其实真的万分庆幸早出发好长时间),在坐地铁的时候看错路标反方向做了一站,然后在最后下车的时候又提前下了一站,在找公司所在位置的时候又浪费了十几分钟,不过还好依然在两点二十的时候到达公司门口。下面说说第二次面试:

笔试题:

1、 快速写入文件

2、 session和cookie的区别

3、 常用数据库及区别

4、 Delete from  和 truncate 却别

5、 MySQL字符串连接函数

6、 给定URL提取协议,端口号,文件query

7、 快速排序,快速key value 反转

8、 快速取字符串后 3 – 6

9、 将文件上传到一个url(将/tmp/sss传入到一个url)

10、varchar类型的order by 转成int

11、什么是sql注入,怎防范

12、二分法查找

13、查看mysql执行效率

14、PHP中单引号和双引号的区别

15、PHP中 ++$i 和 $i++的却别

大概就是这些了,都是一些基础支持,只不过在平时不怎么在意,需要考前突袭。

在和面试官交流的时候才知道,这个公司很少用PHP做功能,大部分是python语言来实现的,而且主要是做第三方的,需要尽快上手。不过后来回忆和面试官的交流觉得自己有点儿贬低自己了,把自己说的太差强人意了,恩,这个以后在面试的时候还是需要注意的。

 

三、大概提前一个小时到了,貌似有点太早了。进到公司之后没有做什么笔试题,直接进入面试阶段。

1、简单介绍一下自己,然后说一些自己的项目,针对其中的某个项目问了一两个小问题

2、PHP语言的强弱,举例说明

3、PHP和java的却别

4、PHP的继承,构造函数是否会被继承。

5、jQuery选择器,jQuery函数大致有哪些分类

6、数据库的设计,表设计,主键,连接方式

7、数组(k/v)格式,查找字符串。注:数组非常大,10万条,百万条,千万条数据。

8、PHP的魔术方法

10、数组转换,比如二维转换为一维,一维转换为二维。

一些基础知识,不过自己感觉回答的不好,在回答的时候还是有点儿懵。知道的不知道的都忘了,回答的晕晕乎乎的。

 

四:公司不是太大,提前到了,然后就开始做面试题,足足五张试题,还没看到试题就蒙了,真心的有点儿多,当时还有其他人也在做面试题,只有一两张而已,压力突增,不过还是心惊胆战的接受了。

1、写一个函数,计算两个文件的相对路径。

  如:$a="/a/b/c/d/e.php";

    $b="/a/b/12/34/c.php;

  则:$b 相对于 $a 的相对路径应该是 ../../c/d/c.php.

2、日至未见中记录了标准的URL格式,从中去除.php为扩展名的文件名。

  如:http://club.sohu.com/abc/de/index.html

    http://club.sohu.com/df/hi/page.php?id=1

    http://club.sohu.com/xy/read.php?key=123&board=456

  取出的内容为:Page.php,read.php。

3、学生科目和成绩保存在三个表中,设定成绩60分及格:

  学生表:

  CREAKE TABLE ‘user’(

  'user_id' INT NOT NULL,

  'user_name' VARCHAR(20) NOT NULL  

  )

  科目表:

  CREATE TABLE 'course'(

  'course_id' INT NOT NULL,

  'course_name' CARCHAR(20) NOT NULL

  )

  成绩表:

  CREATE TABLE ‘score’(

  'user_id' INT NOT NULL,

  'course_id' INT NOT NULL,

  'score' INT NOT NULL  

  )

  A:将全部成绩都合格的学生找出,列出ID 和姓名。(写出程序代码)

  B:如果通过一门课程得到相应学分。描述对上述表需要进行的修改,并给出查询修满30学分且无不及格科目的学生的方法。(不必写程序代码)

4、某数组内容为:{4,6,3,'a','d',5,7,3,7,2,3,7,9,'e','s','c',9,'w','x'......'g',2,'x'},请统计出其中出现过的元素,并且按照元素的出现次数排序输出。

  如:4 - 21

    'a' - 19

    9 - 18

    ... ...

  要求:代码简练,易读性强。

客观题(中级PHP程序员):

1、下列语法中不正确的是?:

  A. echo hello;  B. print hello  C.unset hello  D. include hello.

2、Jscript 代码: var x=1; var y=0; funciton add(n){n=y+1;}; y = add(x); 执行后Y值?:

  A. 1  B. 0...  C. 2  D. 以上都不是

3、那个命令返回值是数组?:

  A. file  B. fopen  C. file_get_contents  D. readfile

4、命令 ? 与其他的不同:

  A. exec  B. passthru  C. system  D. eval

5、下列语句中 ?会产生报错信息:

  A. @prin($var_not_exit);  B. @include("file_not_exit");

  C. @unlink("file_not_exit");  D. @foreach($var_not_exit as $temp) echo $temp;

6、PHP5才默认支持的语句是?:

  A. move_uploaded_file('/temp/Ef9EF876.temp','/opt/100091.jpg');

  B.file_get_contents('http://www.sohu.com');

  C. sqlite_exec('SELECT * FROM user');

  D. explode(',',$mystring);

7、PHP在命令下运行,应使用 ?获得命令行参数

  A. $_SERVER  B.$argv  C.$_COMMAND  D.$_REQUEST

8、下列Redhat Linux 的指令中, ? 是不正确的:

  A.ls -lh  B.du -sh  C. grep 'test'  D.df -h

9、Redhat Linux 中,?不能直接反映系统负载情况:

  A.pstree  B.top  C. cat/proc/loadavg  D. du -sh

10、那个SQL语句是错误或者MySql不支持的:

  A.select * from user where user_name='guest' ORDER BY user_id LIMIT 100,100

  B.select * from user into user_bak

  C.insert into user set (user_id,user_name) values(1,'guest1'),(2,'guest2'),(3,'guest3)

  D.insert into user_bak (user_id,user_name) select user_id,user_name from user

posted @ 2016-09-17 11:53  蚂蚁力量  阅读(201)  评论(0编辑  收藏  举报