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

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

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

1. 写出下面的程序输出的结果

$str="cd";
$$str="abcde";
$$str.="ok";
echo $cd;

  

答案:该段代码输出是:abcdeok

2. 写出如下程序的输出结果

$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 里取出文件的扩展名。 例如: /de/fg.php?id=1 需要取出 .php

答案 1:

function getExt($url){
   $arr = parse_url($url);
   $file = basename($arr['path']);
   $ext = explode(".",$file);
   return $ext[1];
}

  

答案 2:

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.

具体代码如下:

方法一:

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');

  

方法二:

$temp = explode('-','2007-2-5');
$time1 = mktime(0,$temp[1],$temp[2],$temp[0]);
$temp = explode('-','2007-3-6');
$time2 = mktime(0,$temp[0]);
echo ($time2-$time1)/86400;

  

面试题系列:

2020最新PHP面试题(附带答案)

分享一波腾讯PHP面试题

2019年PHP最新面试题(含答案)

Redis 高级面试题 学会这些还怕进不了大厂?

面试官三年经验PHP程序员知识点汇总

php面试题之PHP核心技术

掌握 Redis这些 知识点,面试官一定觉得你很 NB

当面试官问你:如何进行性能优化?

PHP 经典面试题集

更多学习内容请访问:

腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)

图标

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


前段时间专心面过腾讯,经过了N轮的技术面,结果还是挂了,但没挂在技术面,比较欣慰,回来之后写一点总结,以供有梦想进入腾讯做后台服务器开发的同学参考,本文章为胡成精心总结,胡成原创,copy和转载请通知
1)tcp三次握手的过程,accept发生在三次握手哪个阶段?2)Tcp流, udp的数据报,之间有什么区别,为什么TCP要叫做数据流?3)const的含义及实现机制,比如:const int i,是
1.get,post 的区别 1、GET在浏览器回退时是无害的,而POST会再次提交请求。2、GET产生的URL地址可以被Bookmark,而POST不可以。3、GET请求会被浏览器主动cache,而
1、优化 MYSQL 数据库的方法 (1) 选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置 NOT NULL, 例如’省份,性别’, 最好设置为 ENUM (2) 使用连接(JOIN)来
程序员找工作必备 PHP 基础面试题​ 程序员找工作必备 PHP 基础面试题(二) 1. 写出下面的程序输出的结果 $str="cd"; $$str="abcde&quo
1、我们知道 autoload 可以实现类的自动载入,如何把一个类 splDemo 的方法 autoload 注册成为一个__autoload (关键词:spl) abstract
程序员找工作必备 PHP 基础面试题​ 程序员找工作必备 PHP 基础面试题(二)​ 程序员找工作必备 PHP 基础面试题 (三) 一、在 HTTP1.0 中,状态吗 500 的含义的是什么?如果返回
2020年PHP 面试问题(一) 2020年PHP 面试问题(二) 一.数据库三范式 第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解; 第二范式:2NF是对记录的惟一性约束,要求
一.什么是 CGI?什么是 FastCGI?php-fpm,FastCGI,Nginx 之间是什么关系? CGI,通用网关接口,用于WEB服务器和应用程序间的交互,定义输入输出规范,用户的请求通过WE
1.PHP 如何实现不用自带的 cookie 函数为客户端下发 cookie。对于分布式系统,如何来保存 session 值。 这个题有点绕。考的还是 COOKIE 和 SESSION 的基础知识。服
1、PHP 语言的一大优势是跨平台,什么是跨平台? PHP 的运行环境最优搭配为 Apache+MySQL+PHP,此运行环境可以在不同操作系统(例如 windows、Linux 等)上配置,不受操作
如何直接将输出显示给浏览器? 将输出直接显示给浏览器,我们必须使用特殊标记 <?=and?>。 PHP 是否支持多重继承? PHP 只支持单继承。PHP 的类使用关键字 exte
1.缩短键值对的存储长度 键值对的长度是和性能成反比的,比如我们来做一组写入数据的性能测试,执行结果如下: 从以上数据可以看出,在 key 不变的情况下,value 值越大操作效率越慢,因为 Redi
原文链接 分享:[分享] 大环境下瑟瑟发抖辞职的第二天,拿了两个 offer 面试题解析 看你简历里也有用过 Go,Go 和 PHP 在运行的时候有什么区别和优势? 题主原回答:PHP 每个请求进来时
推荐视频:面试10家公司,收获9个offer,2020年PHP 面试问题 第一阶段1-2年 我认为1-2年对于PHP程序员来说是第一个门槛,这一阶段菜鸟正式从理论迈向企业级开发。我们知道如何使用工具、
1、什么是rabbitmq 采用AMQP高级消息队列协议的一种消息队列技术,最大的特点就是消费并不需要确保提供方存在,实现了服务之间的高度解耦 2、为什么要使用rabbitmq 1. 在分布式系统下具
前言 日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题。 面试10家公司,收获9个offer,2020年PHP 面试问题 一
是什么 ,在什么地方用,注意什么,特点,如何配置(相关关联),出现的问题(缺点),引出解决办法或另一种方法-PHP:Hypertext Preprocessor一、get和post的区别1. get是从服务器上获取数据,post是向服务器传送数据。2. get是把参数数据队列加到提交表单的ACTIO
Php1、表单中get与post提交方法的区别?答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.2、session与cookie的区别?答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_d