sanhutrees 发表于 2018-12-20 12:02:53

腾讯PHP面试题

  1.setcookie('a','value');print $_COOKIE['a'];输出结果是啥?
  答:value第一次访问为空!第二次访问$_COOKIE['a']已经被赋值完成!
  ----------------------------------------
  2.
  try {
  require_once "aaa";
  print "aaa";
  } catch (Exception $e) {
  echo 'dddd';
  }
  结果是啥?
  答:没有输出。程序退出。
  如果修改为:
  try {
  include_once "aaa";
  print "aaa";
  } catch (Exception $e) {
  echo 'dddd';
  }
  则输出aaa
  或者修改为:
  try {
  if(!include_once "aaa") {
  throw new Exception;
  }
  print "aaa";
  } catch (Exception $e) {
  echo 'dddd';
  }
  则输出dddd
  本人测试,原题的代码输出就是aaa 或者aaa文件不存在时报警告信息
  ------------------------------
  3.
  用JS实现trim函数
  答:虽然javascript中没有trim()函数,但是可以使用正则表达式实现trim()函数的功能。
  
  String.prototype.trim = function() {
  var reg = /^\s*(.*?)\s*$/;
  return this.replace(reg,"$1");
  }
  function Testtrim() {
  var TestStr = " yingfm ";
  alert("("+TestStr.trim()+")");
  }
  Testtrim();
  
  ------------------------------
  4.
  alert(1);
  输出啥?
  答:本人觉得应该输出1.js中输出的内容
  ------------------------------
  5.
  alert(["a","b","c","d","e"][,3,4]);
  输出啥?
  答:e       经测试,确实输出e,看看alert(["a","b","c","d","e"])的输出是什么
  ------------------------------
  6.
  类似这样的aaasssddd字符串,写个函数CutStr($str,$max)实现截取:
  1)如果$max大于$str的长度则返回$str
  2)和不包含在长度计算范围。
  例:
  如果CutStr("aaasssddd",6) 则返回aaasss.
  如果CutStr("aaasssddd",4) 则返回aaas,不包含标签
  ------------------------------
  7.
  不使用php内置函数实现数组排序,如果value相等,比较key的值。例: array("d" => 100,"c" => 22, "a" => 22);
  答:
  简单排序:
  
  输出:
  Array ( => 1 => 2 => 5 => 7 => 8 )
  Array ( => 8 => 7 => 5 => 2 => 1 )
  根据关键字排序:
  
  输出:
  Array ( => Germany => Spain => India => United States )
  根据值排序:使用asort()代替ksort()就可以。它的相反排序arsort()
  Array ( => Germany => India => Spain => United States )
  自然语言排序: natsort(),对它的相反操作可以使用array_reverse()
  
  输出结果:
  Array ( => book-1 => book-10 => book-100 => book-5 )
  Array ( => book-1 => book-5 => book-10 => book-100 )
  根据用户自己定义的规则排序:
  
  多维排序:
  
  ------------------------------
  8.
  数据库中有两个字段 id, sorce.假设sorce的取值范围是 5-10.
  按照以下概率实现sorce数据的更新。
  5(25%) => 6 5(25%) => 7
  6(20%) => 7
  7(25%) => 8 7(25%) => 6
  8(10%) => 6 8(25%) => 9
  9(15%) => 8 9(20%) => 10
  10(25%) => 9
  要求考虑性能及扩展性。写出概率分布相关代码。
  ------------------------------
  9.
  设计一个缓存系统。写出思路。画出图。考虑命中,生存期等多种要素。
  答:可以参考memcached



页: [1]
查看完整版本: 腾讯PHP面试题