7 年工作经验 PHPer 竟然写错创建空文件的语句。。。

2015-01-21 11:24:38 +08:00
 Actrace
这阵子公司收人,面试题非常简单非常基础,本来笔试只是为了走走过场,但还是有不少“牛人”竟然连创建空文件的语句都能写错。。。

因为招人要求是高级PHP,要求经验至少5年以上,所以能来面试的人都非常少,,,大部分都是在其他公司混到经理(管理层)的职位了。。。难道当了经理之后就真的一点代码都不碰了么。。。

PS:
1个10年经验,一个7年经验,创建空文件竟然都写成了mkdir。。。其中一个还写成了mk_dir,,,难道是故意写错的么。。。
16278 次点击
所在节点    程序员
210 条回复
555
2015-01-22 09:59:47 +08:00
找这么多年经验的,问这么简单的问题,待遇高吗?
qqjt
2015-01-22 10:28:22 +08:00
@konakona 我心虚特地查了下,str_ireplace() str_pad() str_repeat() str_replace() str_rot13() str_shuffle() str_split()str_word_count() 我能记住的就str_replace()……
iamjs
2015-01-22 10:43:53 +08:00
晃了一眼看 第一反应是 mkdir。
如果你指出错误,我也会“抱歉,看错,应该是 fwrite file_put_content”....

其实 新建文件夹 和 新建文件都比较少用到。。但linux常用mkdir。所以会更熟一点。。
没啥意思 纠结这点。。。。

序列化。。真心好久好久不用。。。。。。
muzuiget
2015-01-22 10:47:45 +08:00
7年经验还考这种题目,能马上查出来的就不蛋疼去背了。
loryyang
2015-01-22 10:52:33 +08:00
我不太同意,我真的记不住那么多API,而且API的很多细节用的时候才会认真研读。除非是最近在使用这部分的API,否则用过会忘的。即使是自己写的代码,过一段时间也会忘记。哪怕你认真研究,做过笔记的东西,最终还是会忘的。
一个资深的RD最重要的不是API记得有多娴熟,而是对这个语言在设计、开发上面应该遵循怎样的规则,知道多少这门语言的缺陷、坑。最佳实践是怎样的,业内动向,了解各种成功失败案例。遇到困难,知道如何去解决。如果去寻找适合当前需求的技术、框架。
说实话一门语言,如果只是招进来用用API,写两行代码,那随便找一个毕业学生好了,何必要找资深员工呢?
不过,我同意面试考察写代码,但是更倾向于写伪代码,刨除API本身的限制,更看中面试者的思维和逻辑。
maddot
2015-01-22 10:55:58 +08:00
楼主的逻辑堪忧啊,这是背多少函数名都解决不了的,喷你说的考试题代表写不出这些函数名?
Havee
2015-01-22 11:14:24 +08:00
楼主附言3没必要了吧
人家喷的是这面试题出的不应该,而不是大家写不出来,然后嘲讽实习生能写出来......
楼主招聘要求降低点,譬如2-3年即可,没人会喷。2-3年的经验足够了,时间再长的话,就是架构等其他方面的经验了。
如果真有一个7年一直在底层码php经验的人,反而会怀疑对方哪方面有问题,会不会影响到现有的团队了。
Actrace
2015-01-22 11:22:26 +08:00
@Havee
很多人写了一辈子代码,骨灰级程序员是存在的。在某些“邪恶”的国家甚至很多。这些程序员还真是可遇不可求。
反倒是有些人,自持工作年限加成光环混日子(还挺多),拜托这个行业不是这么好混的好不~
架构之类的,真以为那些一两年经验的人都不懂么?大部分人只是因为自卑而不表现出来而已。
Havee
2015-01-22 11:34:48 +08:00
@Actrace
还是看你用功需求
如果你是 CIO,要拓展研发的部门,那么招管理人员用此类面试题肯定是不行的,他们的强项在于问题解决的思路与方法,而不是实践
如果你是一部门主管,需要一位资深码农来分担研发环节的任务,诚如你说,骨灰级的爱好者肯定是存在的,那么慢慢挑吧

至于你说的一两年经验的人懂架构,懂跟实际操作永远是两码事,用个行外的比方来说,开初创公司简单吧,魔都甚至都不验资了,但是实际流程走一遍的跟没走过流程的永远是两类人。
Actrace
2015-01-22 11:42:42 +08:00
@Havee
招聘要求是高级PHP。。。高级PHP连这些基本操作都能出错不觉得很扯淡吗。。。

PS。管理人员基本不会从外部引入,,国内大部分都是内部提升。
aising
2015-01-22 11:49:45 +08:00
serialize函数写不正确,代表不会用这个函数么?不知道楼主考验的是什么能力。。
我想问问楼主,你知道php作者的名字么
maddot
2015-01-22 12:28:18 +08:00
@Actrace "管理人员基本不会从外部引入,,国内大部分都是内部提升", 楼主真是什么都懂啊,一开口就是“95%”,“国内大部分”
maddot
2015-01-22 12:29:08 +08:00
还漏了一个“基本不”
RemRain
2015-01-22 12:56:33 +08:00
创建空文件前,不应该先用 mkdir 把父目录创建出来么?如果经常切换各种语言的话,写不对很正常,比如 Perl 里面各种 mkpath make_path mkdir 用多了,换回 PHP 后,我还真不知道是 mkdir 还是 mk_dir。高级 PHP 指的是高级 PHP 手册工程师么?

另外,我提出质疑,用 PHP 创建空文件,楼主也写不对。
sujin190
2015-01-22 13:21:42 +08:00
看来咱就是那95%写不出serialize函数的人,单词不会拼,从来依赖ide提示的说。。。。
ideaa
2015-01-22 13:40:12 +08:00
我从来不会去记serialize这样的函数的全拼... 都是IDE的错...
iyaozhen
2015-01-22 13:44:30 +08:00
@zhicheng 就是你们这些人,我要报警了。为了校招我把状态码全背了。
gadmyth
2015-01-22 13:46:15 +08:00
IDE用多了。我们是命令行党
raincious
2015-01-22 14:08:13 +08:00
@Sunyanzi

其实呢,我也觉得,如果连serialize都打不出来,估计平时代码量也没多少。

话说怎么创建空文件呢?

$pathToFile = '';
$pathToRootDir = pathinfo($pathToFile, PATHINFO_DIRNAME);

if (!file_exists($pathToRootDir) && mkdir($pathToRootDir, 0644, true)) {
    return false;
}

return file_put_content($pathToFile, ''); // Replace the file if it's there already

好像不是很难,下一题……
mhycy
2015-01-22 14:11:59 +08:00
@raincious 说实在的还没遇上要用序列化的需求...
JSON倒是经常见

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/164074

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX