PHP中常见的面试题1(附答案)

时间:2022-01-12 08:07:58

1. php中字符串可以用哪三种方法定义:

单引号、双引号、定界符

 

2. 定义常量和静态常量的语法是:

define(‘常量名’,’常量值’)

static $var

 

3. 用php打印出昨天的时间,格式是2006-05-10 22:21:21:

date_default_timezone_set('PRC');

echo date('Y-m-d H:i:s',time()-60*60*24);

echo date('Y-m-d H:i:s', strtotime(‘-1 day’));

 

4. 开启php错误报告的方法是:

修改配置文件display_errors = On, 或者ini_set(‘display_errors’, ‘On’);

 

5. php中将对象或者数组序列化的函数是:

serialize()

 

6.如何定义类成员的访问控制:

public private protected

 

7.以下代码在浏览器中输出的结果是:

<?php

$x=87;

$y=($x%7)*16;

$z=$x>$y?1:0;

Echo $z;

?>

结果:1

 

8.有一张员工表user[id,name,money],写出sql语句查询表中money的最大值:

SELECT max(money) FROM user

写出sql语句查询money最多的前10个人,按照money由大到小排序:

SELECT * FROM user ORDER BY money DESC LIMIT 0,10

 

9.写出一个函数 求两个日期的差数,例如2007-2-5~2007-3-6的日期差数:

function getDays($d1,$d2) {

     $nd1 = strtotime($d1);

     $nd2 = strtotime($d2);

     $days = ceil(abs($nd2-$nd1) / (60*60*24));

     echo $days;

}

 

10.写一个php函数实现从N个整数($a=array(5,10,2,3333,20);)找出最大的一个,注意:不要使用php的max、sort等函数:

function getMax($m){

     $v = 0;

     foreach($m as $v1){

          if($v1>$v){

               $v = $v1;

          }

     }

     return $v;

}

 

11.有一个100层高的大厦,有一堆材质大小一模一样的石块,从这个大厦的某一层(临界楼层)扔下,石块就会碎,使用哪种算法能最快的得到这个临界楼层?

  (1). 石子儿无限  二分法.

  (2). 两个石子儿  分段算法

    14  27  39  50  60  69  77  84  90  95  99