V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Actrace
V2EX  ›  程序员

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

  •  
  •   Actrace · 2015-01-21 11:24:38 +08:00 · 16187 次点击
    这是一个创建于 3628 天前的主题,其中的信息可能已经有所发展或是发生改变。
    这阵子公司收人,面试题非常简单非常基础,本来笔试只是为了走走过场,但还是有不少“牛人”竟然连创建空文件的语句都能写错。。。

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

    PS:
    1个10年经验,一个7年经验,创建空文件竟然都写成了mkdir。。。其中一个还写成了mk_dir,,,难道是故意写错的么。。。
    第 1 条附言  ·  2015-01-21 14:30:31 +08:00
    好吧,看到这么多人来喷,其实我心里很爽,铜币又赚了不少~哈哈哈
    我自己写了5年多的PHP了,虽然现在做管理,不过我上班随意的,天天研究研究写代码。
    比如如何写代码比较爽之类的~
    当然国内的话,99%的程序员进入管理层了应该都不再碰代码了吧。

    PS。突然想起一个梗,那些从培训出来的同学至少“初始”2年工作经验。
    第 2 条附言  ·  2015-01-21 14:35:55 +08:00
    再补充一个经典的笔试梗
    我厂笔试第一题是写序列化函数,serialize,95%的面试者写不出来~
    第 3 条附言  ·  2015-01-22 10:42:52 +08:00
    哎,国内气氛还是太浮躁。
    写不出来的面红耳赤地嘲笑写得出来人还真不少。
    每天都谈国产化和自主研发。
    210 条回复    2015-01-23 14:33:11 +08:00
    1  2  3  
    tini9
        1
    tini9  
       2015-01-21 11:27:06 +08:00
    8年php经验,我也不会
    tini9
        2
    tini9  
       2015-01-21 11:28:02 +08:00
    我来分析下楼主的心理:楼主潜意识里想招一个容易驾驭的实习生
    nine
        3
    nine  
       2015-01-21 11:32:15 +08:00
    file_put_content('file_name','') 这样可以吗
    branchzero
        4
    branchzero  
       2015-01-21 11:36:16 +08:00
    touch?
    cevincheung
        5
    cevincheung  
       2015-01-21 11:38:24 +08:00
    按照这个思路的话不只是创建文件了,创建之前要检查是否有权限,是否有重名文件,是否可以被创建,创建失败的异常处理……
    ls25145
        6
    ls25145  
       2015-01-21 11:40:20 +08:00
    这年头又不是用记事本写代码,再说写错了运行的时候会报错的。
    经验长不代表打字记函数NB,有什么可鄙视的。
    到这个年份都是谈解决问题的能力吧
    likexian
        7
    likexian  
       2015-01-21 11:41:35 +08:00   ❤️ 2
    你这个要求,招的是体力工,有那么多年的经验求好看吗?招个实习生,便宜到你笑,背函数背到你爽。
    干了三五十年更应该考察解决问题的方法,思路,招进来要能做大事。什么狗屁mkdir看下手册谁不会。
    PS:我不懂PHP,专业ASP路过。
    chairuosen
        8
    chairuosen  
       2015-01-21 11:41:54 +08:00
    这些东西只能考广度不能考深度
    yangqi
        9
    yangqi  
       2015-01-21 11:42:03 +08:00
    楼主题目贴上来看看是不是产生了歧义?
    tini9
        10
    tini9  
       2015-01-21 11:43:16 +08:00   ❤️ 1
    你不知道现在IDE都智能到什么程度了吗?默写函数名、类名、方法名是对我大JB党的侮辱。
    senghoo
        11
    senghoo  
       2015-01-21 11:43:54 +08:00
    记得当年面试的一家公司。给了我一个白板让我写C的快排。。我说我带了电脑问能不能在我的电脑上写这样还能快点。。还各种不让。。。
    fising
        12
    fising  
       2015-01-21 11:46:32 +08:00
    6年经验,同不会写。
    smilngwang
        13
    smilngwang  
       2015-01-21 11:47:18 +08:00
    小白表示工作时候大部分时间都是边看文档边写程序。。。
    ooh
        14
    ooh  
       2015-01-21 11:47:49 +08:00
    难道不是echo '' > file?
    fising
        15
    fising  
       2015-01-21 11:49:07 +08:00
    @ooh 这是bash
    youyang
        16
    youyang  
       2015-01-21 11:49:16 +08:00
    做事的都是小弟,lz难道还不明白??
    learnshare
        17
    learnshare  
       2015-01-21 11:50:14 +08:00
    工作年限跟经验和能力通常不能匹配
    liubin
        18
    liubin  
       2015-01-21 11:50:22 +08:00
    mahone3297
        19
    mahone3297  
       2015-01-21 11:54:53 +08:00
    大家好像都觉得lz不对。。。我比较支持lz。。。可能面试的人真的好久不写代码了。。。
    ooh
        20
    ooh  
       2015-01-21 11:56:05 +08:00
    @fising exec('echo "" > file')忘记带函数了咩,蛤蛤
    tabris17
        21
    tabris17  
       2015-01-21 11:58:39 +08:00
    按楼主的意思是要背出每个函数以及参数返回值等等。LZ找个机器人吧
    sampeng
        22
    sampeng  
       2015-01-21 11:58:52 +08:00
    明显招的体力活。。。
    楼主吐槽文件函数搞错。。这完全是扯蛋。。
    你天天操作文件?要说是经常用得数组,字符串函数搞错,那部应该。
    文件这玩意,基本上做好久再不改了的。你试试半年不碰这些函数,保准忘的七七八八。。。
    tabris17
        23
    tabris17  
       2015-01-21 12:01:03 +08:00
    另外创建文件前用mkdir创建文件路径有什么错?
    muziyue
        24
    muziyue  
       2015-01-21 12:04:07 +08:00
    用了三年我也记不住,都是现查
    ivenvd
        25
    ivenvd  
       2015-01-21 12:06:02 +08:00
    7 年工作经验还需要做笔试啊…… PHP 工程师好辛苦……
    forbreak
        26
    forbreak  
       2015-01-21 12:06:08 +08:00
    7年工作经验了,面试还考代码。。。
    fising
        27
    fising  
       2015-01-21 12:07:09 +08:00
    7年经验。楼主问这个问题在羞辱别人
    liujianwei
        28
    liujianwei  
       2015-01-21 12:07:39 +08:00
    @likexian 不能赞同更多
    yrdr
        29
    yrdr  
       2015-01-21 12:12:06 +08:00
    我写php也有5年了,如果经常写代码,mkdir这个函数应该是经常用到的,当然,我是低端程序员,所以这块接触多一点,真正7年工作经验,应该很少写代码了吧
    sarices
        30
    sarices  
       2015-01-21 12:16:56 +08:00   ❤️ 1
    @nine file_put_contents('filename','');
    moroumo
        31
    moroumo  
       2015-01-21 12:17:45 +08:00
    我面别人的时候,常用函数都可以写伪代码。只有实习生才会在代码上严格些。
    thanksir
        32
    thanksir  
       2015-01-21 12:19:45 +08:00   ❤️ 1
    现在基本上不经常用的都是去翻文档,这个跟能力没什么关系,人家都7年工作经验了,你还考人家这个。。。。汗。。。。
    Ricky123
        33
    Ricky123  
       2015-01-21 12:20:45 +08:00 via iPhone
    楼主是招聘新手吧
    bombless
        34
    bombless  
       2015-01-21 12:21:11 +08:00
    创建空文件写成mkdir……
    我眼下只想出了fopen……

    关键是,楼主在哪个城市招,发出去的招聘信息是怎样的,在什么渠道发的。

    如果你招聘信息是这样的:
    精通 div+css
    精通 MVC
    精通 PHP

    那正常人都绕道了,留下碰运气的估计也都是不靠谱的。靠谱的估计楼主也给不出人家想要的工资。
    ETiV
        35
    ETiV  
       2015-01-21 12:22:53 +08:00
    @ooh 你试试就知道, `echo '' > file` 出来的文件不是空的. 里面带了一个回行. 文件大小 1byte.
    jamlee
        36
    jamlee  
       2015-01-21 12:31:08 +08:00
    这个真是头大啊
    gnup
        37
    gnup  
       2015-01-21 12:32:00 +08:00
    让我想到了字典
    新华字典的用处是用的时候去找一下。
    把整个字典都背下来,花那个精力有多大意义?
    不常用的查字典比较效率
    Havee
        38
    Havee  
       2015-01-21 12:35:30 +08:00
    摸键盘还能想起来,离开电脑记忆就一片空白的飘过~~~
    O21
        39
    O21  
       2015-01-21 12:36:41 +08:00 via iPhone
    touch hello.php

    mkdir helloupman

    rm -rf / #Shut up
    chinawrj
        40
    chinawrj  
       2015-01-21 12:37:40 +08:00   ❤️ 1
    大学老师考PHP会出这个
    bombless
        41
    bombless  
       2015-01-21 12:39:56 +08:00
    @Havee 哈哈,刚刚想发短信,想着通过手机语音助手发出去就行了,结果却想不起要发什么,把语音助手关了直接打拼音才想起来要发什么
    hehehas
        42
    hehehas  
       2015-01-21 12:40:09 +08:00
    出面试的公司,都是牛氓,手册都能查到的东西 有什么好考的?要么你出点开放性的问题更容易些...谁没事特么的喜欢去背函数呀
    belin520
        43
    belin520  
       2015-01-21 12:45:04 +08:00   ❤️ 1
    我想看楼主的回复~
    每次看贴都能看到网友跟预想不一样的一边倒的回复
    yakczh
        44
    yakczh  
       2015-01-21 12:46:43 +08:00
    你招的是码农,不是php
    awebird
        45
    awebird  
       2015-01-21 12:46:52 +08:00
    我觉得对于两年以上经验的程序员,面试应该更多的了解别人擅长什么,做过什么,结合项目去深入聊彼之长,而不是考核知识盲区(除非为了压价).. 现在知识领域那么宽阔,任何人特别是在大型协作项目里,能做好几个方面都很不错了,至少说明有能力做好作对事情
    dryyun
        46
    dryyun  
       2015-01-21 12:47:34 +08:00
    我表示,我还是要查一下手册,如果面试 高级PHP 那就出一些 有深度的问题,你的这种问题就是面试个初级php 的应该出的问题。
    gamecreating
        47
    gamecreating  
       2015-01-21 12:47:37 +08:00
    其实我最反对笔试这玩意...
    工作中有多少是要你用笔出一段代码的

    大部分是活学活用的 很多需要网上找资料
    我承认我是菜B
    killerand1983
        48
    killerand1983  
       2015-01-21 12:50:59 +08:00
    现查。
    dryyun
        49
    dryyun  
       2015-01-21 12:51:04 +08:00
    @dryyun 好吧,我觉得 初级的也不应该出, 创建空文件,是啥应用场景。。。实际中用到的机会不多吧,至少我不怎么用。
    refresh
        50
    refresh  
       2015-01-21 12:52:35 +08:00
    同样N年经验面试很多东西不会写的飘过,我可以说,没有Google我基本不会写代码,让我徒手创建一个项目我都无法完成
    但这又怎么样呢,好的程序员只记key和way,而不是背书
    tini9
        51
    tini9  
       2015-01-21 12:53:21 +08:00
    @awebird “而不是考核知识盲区(除非为了压价)”
    _______________________________________________________________________

    +1

    面试考察盲区就是为了在接下来的谈判中压价,或者技术面试官给对方一个下马威挫这个将来新同事的锐气,以便在以后的共事中占上风。不过这也看出来一些公司的企业文化。
    yylyyl
        52
    yylyyl  
       2015-01-21 12:56:09 +08:00 via iPhone   ❤️ 4
    一群写不出来的嘲笑能写出来的…
    extreme
        53
    extreme  
       2015-01-21 12:56:44 +08:00
    @ETiV echo加一个-n参数就不会自动换行了,其实可以直接:
    >文件名
    echo是多余的。
    我觉得尽量避免exec这类执行程序的函数好。
    wwlweihai
        54
    wwlweihai  
       2015-01-21 12:57:43 +08:00   ❤️ 1
    好笑。看不上应届生,说应届生只会死记硬背;现在还看不上有经验的人了,死记硬背都不会。
    aszxqw
        55
    aszxqw  
       2015-01-21 12:58:16 +08:00
    老一辈的无产阶级程序员不一定熟悉linux
    yuankui
        56
    yuankui  
       2015-01-21 12:58:46 +08:00
    估计都看成了创建 [空文件夹] 了吧。
    有需要用php创建空文件的场景吗??
    Phariel
        57
    Phariel  
       2015-01-21 13:01:56 +08:00
    我现在写的代码,过一个月再想去改,要先过过上下文才明白我当时为什么这么写。做的东西越繁杂,精力越有限,那么你的细致点只能安排在你当前做的事情上,我要是能通古至今我还在码代码干个蛋。
    就跟有些东西你查查API,跑跑代码就能得知结果一样,非得在纸上背出来,我觉得这就是找茬。
    高级开发,你应该考察的是大局观,比如一件事情能给几个解决方案,一个东西基础架构应该怎么搭建比较好。而且还包括这人态度如何,表达如何,从侧面了解一个人是不是能胜任他的工作,包括与同事的沟通能力,而不是背背背,这又不是高考分数论英雄!我见过很多面霸,进来做事却是一坨屎,到底有何意义?
    crazyxin1988
        58
    crazyxin1988  
       2015-01-21 13:13:23 +08:00
    工作七年经验 完全可以拒绝笔试~
    az
        59
    az  
       2015-01-21 13:19:41 +08:00 via iPhone
    楼主要的是会写1+1的码农,何必多少年,直接去培训学校招聘好了。
    Wenwei
        60
    Wenwei  
       2015-01-21 13:19:51 +08:00
    $fp = fwrite("empty.txt", "w");fclose($fp);这样也可以创建一个空文件。
    问题是创建一个空文件,至少目前没遇到过这样的场景;而且7年经验,还笔试。
    -----------------------------------------------------------
    同意@awebird
    面试是为了发现对方的优势。考盲区我也觉得可能是为了压价。
    nilennoct
        61
    nilennoct  
       2015-01-21 13:22:54 +08:00 via iPad
    其实我想知道lz哪去了==
    vilison
        62
    vilison  
       2015-01-21 13:27:29 +08:00 via iPhone
    楼主是逗逼,如果是俺,俺直接无视走人..
    j
        63
    j  
       2015-01-21 13:30:41 +08:00
    这是真的嘛,php圈太逗了,不,我的意思是这家公司和楼主很逗。
    love
        64
    love  
       2015-01-21 13:32:09 +08:00
    LZ你确定题目上写的是空文件而不是空文件夹,否则为什么都写mkdir,难道这些人会不知道dir是目录?
    xoxo
        65
    xoxo  
       2015-01-21 13:33:09 +08:00   ❤️ 1
    所以,不用submlie编辑器的phper一律不录用
    nsa
        66
    nsa  
       2015-01-21 13:35:33 +08:00 via iPad
    今天又压价多少?
    rming
        67
    rming  
       2015-01-21 13:36:14 +08:00
    凡是笔试写代码的职位,我一般都没什么兴趣了
    sohu022
        68
    sohu022  
       2015-01-21 13:48:02 +08:00
    楼主这样考,说明楼主本身没写过代码,或者很菜。。。
    ooh
        69
    ooh  
       2015-01-21 13:50:05 +08:00
    @ETiV 果然...正确做法应该是//exec('echo -n "" > file')// or //exec('touch file')//
    agui2200
        70
    agui2200  
       2015-01-21 13:50:20 +08:00
    一个工作了7年的phper居然还接受鄙视,悲哀
    xuxu
        71
    xuxu  
       2015-01-21 13:51:15 +08:00
    `touch file`
    wingoo
        72
    wingoo  
       2015-01-21 13:51:25 +08:00
    一堆喷lz的哈哈

    touch确实用的不多, 个人用到也是因为要用php做job处理文件
    yellowV2ex
        73
    yellowV2ex  
       2015-01-21 13:53:46 +08:00
    实际工作中。。10年也不一定需要建空文件吧。。好吧,我承认 看到空文件 就直接脑补了空文件夹。
    这跟 去医院皮包割了一样 ,其实不是包皮你不是也看错了吗?你这题有问题
    ibudao
        74
    ibudao  
       2015-01-21 14:07:20 +08:00
    `> file`
    shiny
        75
    shiny  
       2015-01-21 14:09:10 +08:00
    @yylyyl 我能写出来也照样想嘲笑楼主。
    wudikua
        76
    wudikua  
       2015-01-21 14:13:49 +08:00
    没想到居然喷子这么多
    loveuqian
        77
    loveuqian  
       2015-01-21 14:14:25 +08:00
    睡个午觉起来看到个这样的帖子。。。。
    mhycy
        78
    mhycy  
       2015-01-21 14:36:53 +08:00
    序列化我会直接用JSON
    Actrace
        79
    Actrace  
    OP
       2015-01-21 14:39:11 +08:00
    @belin520 我就等收集一个block列表而已~放网,收渔~
    overflow
        80
    overflow  
       2015-01-21 14:41:17 +08:00
    Actrace
        81
    Actrace  
    OP
       2015-01-21 14:41:18 +08:00
    @mhycy 序列化和JSON编码是两个不一样的意思。基础笔试题考察的更多是面试者的态度。
    mhycy
        82
    mhycy  
       2015-01-21 14:41:55 +08:00
    @Actrace 说回来,脱离了场景的笔试题有啥实际意义么?靠谱的码农也找不到吧?
    panxianhai
        83
    panxianhai  
       2015-01-21 14:42:47 +08:00
    "我厂",很多地方看到这个,这算不算一个梗。
    zhicheng
        84
    zhicheng  
       2015-01-21 14:43:27 +08:00
    你的题太难了,我都是问HTTP状态码的。。。。
    aksoft
        85
    aksoft  
       2015-01-21 14:46:05 +08:00
    额...记不清...
    mhycy
        86
    mhycy  
       2015-01-21 14:46:17 +08:00
    @Actrace
    在我看来这题没意义。
    如果只要考拼写的话那么你找个刚自学完PHP的就够了
    真要靠谱的码农在自然会在合适的场景选用合适的方案
    就像这题,选用序列化在对象序列化以后的结果你可预测?
    不给出例子就问问题这种编程题不能说明任何问题。
    Actrace
        87
    Actrace  
    OP
       2015-01-21 14:52:43 +08:00
    @awebird 我们要求比较高~笔试只是考察态度,面试会考察你说到的那些~
    jalen
        88
    jalen  
       2015-01-21 14:54:08 +08:00
    反正我每次面试,都要重新看一大堆的基础... 就怕出那种面试题..
    ioth
        89
    ioth  
       2015-01-21 14:54:13 +08:00
    发题的同学,你工作几年了?
    做php几年了?
    什么语言要工作5年才精通?
    mhycy
        90
    mhycy  
       2015-01-21 14:54:15 +08:00
    @Actrace 实在搞不懂笔试是怎么考察态度的。。囧
    endrollex
        91
    endrollex  
       2015-01-21 14:54:55 +08:00
    写写伪代码就可以了,这又不是经常用的功能
    Actrace
        92
    Actrace  
    OP
       2015-01-21 14:55:37 +08:00
    @mhycy 换个思路吧,你如果面试一个翻译官,要求5-10年的翻译经验。结果你让他写26个字母他竟然写不全还错了,你会让他当你的翻译吗?
    mhycy
        93
    mhycy  
       2015-01-21 14:56:57 +08:00
    @Actrace 这是完全不同的两样东西啊
    就像PHP程序员会把基础语法写错么?绝对不会
    Actrace
        94
    Actrace  
    OP
       2015-01-21 14:58:51 +08:00
    @zhicheng HTTP状态码属于进阶题。。。
    Actrace
        95
    Actrace  
    OP
       2015-01-21 15:00:14 +08:00
    @mhycy 那是我们对“基础”的标准不一样而已。没有什么好争论的。
    mhycy
        96
    mhycy  
       2015-01-21 15:10:30 +08:00
    @Actrace 所以你这题只适合招码农啊
    pushy
        97
    pushy  
       2015-01-21 15:10:38 +08:00
    呵呵
    zhicheng
        98
    zhicheng  
       2015-01-21 15:12:09 +08:00
    @mhycy 肯定会,除非你没写过代码。我写了这么多年 Python 和 C 和 Objective C ,语法一样会写错。如果面试考我一些诡异的语法是什么意思,一样也不知道。如果不信的话,你问一些发明这个语言的人语法题,他也可能会不知道。
    @Actrace HTTP 状态码是我的梗,有一次在朋友那边帮忙把系统架构做出来,我抱怨他们的人连状态码都不知道,朋友跟我说,你要求太高了,这整家公司知道 HTTP 状态码的不超过 3 个,包括你和我。

    各种代码的烂梗,虽然运行是正确的,但是。。。
    if (foo) {
    return True;
    } else {
    return False;
    }

    if (format=='html') {
    self.render(foo, format='html');
    else if (format=='json') {
    self.render(foo, format='json')
    }

    while (True) {
    foo = bar;
    break;
    }
    winiex
        99
    winiex  
       2015-01-21 15:13:11 +08:00
    我的看法是面试人的时候太纠结于细节不好,而且一定要看自己的招聘需求是什么。你的职位如果是要一线编码的工程师,那你问的问题当然需要知道。如果你招募的是带领团队的人,技术细节不算太重要,重要的是带团队的经验、历史以及三观是否相符于团队现有人员。

    国内大环境下,很多公司内管理线在一般评价体系下价值往往是高于技术线的,很多人做了五六年的人可能都会向管理转向带团队,不做一线技术是常态。小公司要招募一线研发工程师的话,3 年经验的人最好。

    前段时间我看到过一次讨论,源于一个面试官抱怨 5 年经验的 Java 程序员没有正确地答出判断奇偶数的算法,感觉和今天这个话题好像。
    Actrace
        100
    Actrace  
    OP
       2015-01-21 15:13:25 +08:00
    @zhicheng v2上biger挺多~
    1  2  3  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2754 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 13:08 · PVG 21:08 · LAX 05:08 · JFK 08:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.