7 年工作经验 PHPer 竟然写错创建空文件的语句。。。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Actrace
V2EX    程序员

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

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

    因为招人要求是高级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` 出来的文件不是空的. 里面带了一个回行. 文件大小 1bye.
    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
    出面试的公司,都是牛氓,手册都能查到的东西 有什么好考的?要么你出点开放性的问题更容易些...谁没事特么的喜欢去背函数呀
    icanfork
        43
    icanfork  
       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     Solana     3188 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 37ms UTC 12:10 PVG 20:10 LAX 05:10 JFK 08:10
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86