一個招聘的代碼,蠻有趣的!

<?php

/**
 * SF後端開發者招聘函數 
 * 
 * @param array $conditions 條件列表
 * @return boolean 是否合格
 */
function wanted_developer(array $conditions) {
    $score = 0;

    foreach ($conditions as $key => $condition) {
        switch ($key) {
            case 'skills':
                foreach ($condition as $name => $rank) {
                    switch ($name) {
                        case 'linux':
                        case 'nginx':
                        case 'apache':
                            $score += $rank * 1;
                            break;
                        case 'html':
                        case 'php':
                        case 'java':
                        case 'mysql':
                            $score += $rank * 2;
                            break;
                        case 'c/c++':
                        case 'redis':
                        case 'scala':
                        case 'nodejs':
                        case 'mongodb':
                            $score += $rank * 3;
                            break;
                        case 'dota':
                        case 'dota2':
                            $score += $rank * 4;
                            break;
                        case 'lol':
                            $score += $rank * 0;
                            break;
                        default:
                            break;
                    }
                }
                break;
            case 'networks':
                foreach ($condition as $name) {
                    switch ($name) {
                        case 'weibo':
                        case 'qq':
                        case 'weixin':
                        case 'douban':
                            $score += 1;
                            break;
                        case 'v2ex':
                        case 'zhihu':
                        case 'github':
                        case 'gmail':
                        case 'facebook':
                        case 'twitter':
                        case 'wordpress':
                        case 'stackoverflow':
                            $score += 2;
                            break;
                        case 'aws':
                        case 'gae':
                        case 'openshift':
                        case 'linode':
                        case 'azure':
                            $score += 3;
                            break;
                        case 'cl':
                        case 'segmentfault':
                        case 'typecho':
                            $score += 4;
                            break;
                        default:
                            break;
                    }
                }
                break;
            case 'softwares':
                foreach ($condition as $name) {
                    switch ($name) { 
                        case 'linux':
                        case 'macosx':
                        case 'git':
                        case 'chrome':
                        case 'firefox':
                        case 'opera':
                            $score += 1;
                            break;
                        case 'vim':
                        case 'emacs':
                        case 'sublime':
                            $score += 2;
                            break;
                        case 'brew':
                        case 'vagrant':
                        case 'shadowsocks':
                            $score += 3;
                            break;
                        case 'ie':
                            $score -= 1;
                            break;
                        case 'windows':
                            $score += 0;
                            break;
                        default:
                            break;
                    }
                }
                break;
            case 'equipments':
                foreach ($condition as $name) {
                    switch ($name) {
                        case 'mac':
                        case 'chromebook':
                        case 'iphone':
                        case 'nexus':
                            $score += 1;
                            break;
                        case 'hhkb':
                        case 'cherry':
                        case 'filco':
                        case 'kindle':
                            $score += 2;
                            break;
                        case 'miwifi':
                        case 'g-glass':
                        case 'raspberry-pi':
                        case 'leap-motion':
                            $score += 3;
                            break;
                        default:
                            break;
                    }
                }
                break;
            default:
                break;
        }
    }

    return $score >= 70;
}

if (wanted_developer($your_conditions)) {
    mail('[email protected]', '0day', $your_resume);
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章