Skip to content

Latest commit

 

History

History
54 lines (49 loc) · 1.22 KB

笔试题集合.md

File metadata and controls

54 lines (49 loc) · 1.22 KB

笔试题集合

以下答案仅供参考,答案不断完善中~~~

查出下属薪资大于主管的数据(pid代表自己主观id)

id pid name salary
1 0 小明 4000
2 0 小红 5000
3 1 小王 9000
4 2 小刚 3000
5 4 小鱼 5000
select m.*
from salary m , salary l
where m.pid = l.id
and m.salary > l.salary

编写一个函数,将一个长度超过10的数组最后5项直接截取,不改变顺序变为前5项。

例如:{1,2,3,4,5,6,7,8,9,10} 变为:{6,7,8,9,10,1,2,3,4,5}

/**
 * 数组翻转截取,并重组
 * @todo 保留原索引
 * @param array $array 翻转数组
 * @return array
*/
function ArrSort($array) {
    $num = count($array);
    // array_slice($array, 起始位置, 截取长度, 保留索引(默认为false))
    $arr_firstpart = array_slice($array, 0, $num-5, true);
    $arr_lastpart = array_slice($array, ($num-5), 5, true);
    // 最后合并
    $arr_new = array_merge($arr_lastpart, $arr_firstpart);
    return $arr_new;
}
$array = [
    'a' => 1,
    1   => 3,
    2   => 8,
    3   => 9,
    4   => 6,
    'b' => 5,
    5   => -1,
    'c' => 8,
    6   => 0,
    7   => 7,
];
var_dump(ArrSort($array));