金山云php开发工程师线上面经

  1. nginx与php数据通信原理是什么?
  2. $a=[0,1,2,3]; $b=[1,2,3,4,5]; $a+=$b; var_dump($a)等于多少?
  3. 说说redis的缓存失效策略和主键失效机制
  4. 请列举你能想到的UNIX信号,并说明信号用途。
  5. 索引最左原则的意思是什么?
  6. Thrift 实现的基本原理及作用是什么?
  7. 说说你常用的linux命令
  8. 如何修改 SESSION 的生存时间?
  9. Apache默认POST传输的最大容量分别是多少?
  10. 分布式微服务如何管理,你有哪些方案?
  11. composer包发布流程
  12. PHP中如何判断一个字符串是否是合法的日期模式:2007-03-13 13:13:13。要求代码不超过5行
  13. 写一个函数,尽可能高效的,从一个标准url里取出文件的扩展名,例如:http://www.sina.com.cn/abc/de/fg.php?id=1需要取出php或.php
  14. 什么是线程安全?那不安全的StringBuilder采用append会出现哪些状况?
  15. 对 PHP 使用类似“2015-06-04 22:21:21”的格式,打印出前一天时间。
  16. 在程序的开发中,如何提高程序的运行效率?
  17. 冒泡排序呢 冒泡的复杂度
  18. 抓取远程图片到本地,你会用什么函数?

编程题

  • 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。

  • 题目数据保证答案符合 32 位整数范围。

示例 1:

输入:nums = [1,2,3], target = 4
输出:7
解释:
所有可能的组合为:
(1, 1, 1, 1)
(1, 1, 2)
(1, 2, 1)
(1, 3)
(2, 1, 1)
(2, 2)
(3, 1)
请注意,顺序不同的序列被视作不同的组合。

示例 2:

输入:nums = [9], target = 3
输出:0