查看: 297|回复: 0

程序员找工作必备 PHP 基础面试题 (三)

[复制链接]
 楼主| 发表于 2020-3-25 17:34:26 | 显示全部楼层 |阅读模式
程序员找工作必备 PHP 底子口试题
程序员找工作必备 PHP 底子口试题(二)
1. 写出下面的程序输出的结果
  1. $str="cd";$$str="abcde";$$str.="ok";echo $cd;
复制代码
  
答案:该段代码输出是:abcdeok
2. 写出如下程序的输出结果
  1. $count=5;function get_count(){    static $count=0;    return $count++;}echo $count;++$count;echo get_count();echo get_count();
复制代码
  
答案:结果为 5 0 1
3. 请列举一些你所知道的开发模式 (如工厂模式,越多越好)

MVC 模式、单态模式、敏捷开发模式、瀑布流模式、螺旋模式、值对象模式、注册模式、伪对象模式、策略模式、迭代器模式、规范模式
4. 写一个函数,尽可能的高效,从一个标准 url 里取出文件的扩展名。 例如:http://cn.yahoo.com/abc /de/fg.php?id=1 需要取出 .php

答案 1:
  1. function getExt($url){   $arr = parse_url($url);   $file = basename($arr['path']);   $ext = explode(".",$file);   return $ext[1];}
复制代码
  
答案 2:
  1. function getExt($url) {    $url = basename($url);    $pos1 = strpos($url,".");    $pos2 = strpos($url,"?");    if(strstr($url,"?")){         return substr($url,$pos1 + 1,$pos2 - $pos1 - 1);    } else {      return substr($url,$pos1);    }}
复制代码
  
5. 求两个日期的差数,例如 2019-2-5 ~ 2020-3-6 的日期差数


方法一:先用 strtotime 转换成 unix 时间戳,然后相减,除以一天的秒数 86400.方法二:先用 mktime 转换成 unix 时间戳,然后相减,除以一天的秒数 86400.
具体代码如下:
方法一:
  1. class Dtime{function get_days($date1, $date2){   $time1 = strtotime($date1);   $time2 = strtotime($date2);   return ($time2-$time1)/86400;}}$Dtime = new Dtime;echo $Dtime->get_days('2019-2-5', '2020-3-6');
复制代码
  
方法二:
  1. $temp = explode('-', '2007-2-5');$time1 = mktime(0, 0, 0, $temp[1], $temp[2], $temp[0]);$temp = explode('-', '2007-3-6');$time2 = mktime(0, 0, 0, $temp[1], $temp[2], $temp[0]);echo ($time2-$time1)/86400;
复制代码
  
口试题系列:

2020最新PHP口试题(附带答案)
分享一波腾讯PHP口试题
2019年PHP最新口试题(含答案)
Redis 高级口试题 学会这些还怕进不了大厂?
口试官三年经验PHP程序员知识点汇总
php口试题之PHP核心技能
掌握 Redis这些 知识点,口试官一定觉得你很 NB
当口试官问你:如何进行性能优化?
PHP 经典口试题集
更多学习内容请访问:
腾讯T3-T4标准佳构PHP架构师教程目录大全,只要你看完包管薪资上升一个台阶(一连更新)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?用户注册

x

相关技术服务需求,请联系管理员和客服QQ:2753533861或QQ:619920289
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

帖子推荐:
客服咨询

QQ:2753533861

服务时间 9:00-22:00

快速回复 返回顶部 返回列表