首页> 学习> 最新的PHP面试题及答案

最新的PHP面试题及答案

时间:2025-11-03 11:05:01

最新的PHP面试题及答案

无论是身处学校还是步入社会,我们都不可避免地会接触到试题,试题是学校或各主办方考核某种知识才能的标准。相信很多朋友都需要一份能切实有效地帮助到自己的试题吧?以下是小编为大家收集的最新的PHP面试题及答案,仅供参考,希望能够帮助到大家。

最新的PHP面试题及答案

最新的PHP面试题及答案 1

1

include和require有什么区别?

答:区别在于他们如何处理失败, 如果require的文件没有找到, 会造成fatal error,脚本停止执行,如果include的'文件没有找到, 会显示警告,但是脚本会继续执行。

2

给一个变量赋值为0123,但是输出该变量的值总是为其他数字,请问这是什么问题?

答: PHP 解释器会把以0开始的数字当做是八进制的,所以它的值会变成八进制的。

3

PHP里面如何定义一个常量(constant)?

答: 通过define()指令,例如:define(“MYCONSTANT”, 100)。

4

如何对一个变量进行值传递?

答: 可以像C++那样, 在变量的前面加上&, 例如:$a = &$b。

5

在PHP里面可以对string “10″ 和整型 11进行比较吗?

答: 可以,PHP内部实现会把所有东西转换成整型,所以数字10和11可以进行比较。

6

在什么情况下需要用endif 来结束条件语句?

答: 当if语句后面跟的是冒号”:”而不是大括号{时,需要用endif来结束条件语句。

7

要求写一段程序,实现以下数组$arr1转换成数组$arr2:

答:$arr1 = array (

‘0′ => array (‘fid’ => 1, ‘tid’ => 1, ‘name’ =>’Name1′ ),

‘1′ => array (‘fid’ => 1, ‘tid’ => 2 , ‘name’ =>’Name2′ ),

‘2′ => array (‘fid’ => 1, ‘tid’ => 5 , ‘name’ =>’Name3′ ),

‘3′ => array (‘fid’ => 1, ‘tid’ => 7 , ‘name’ =>’Name4′ ),

‘4′ => array (‘fid’ => 3, ‘tid’ => 9, ‘name’ =>’Name5′ )

);

$arr2 = array (

‘0′ => array (

‘0′ => array ( ‘tid’ => 1, ‘name’ => ‘Name1′),

‘1′ => array ( ‘tid’ => 2, ‘name’ => ‘Name2′),

‘2′ => array ( ‘tid’ => 5, ‘name’ => ‘Name3′),

‘3′ => array ( ‘tid’ => 7, ‘name’ => ‘Name4′) ),

‘1′ => array (

‘0′ => array ( ‘tid’ => 9, ‘name’ => ‘Name5′ ) ) );

$arr1 = array (

‘0′ => array (‘fid’ => 1, ‘tid’ => 1, ‘name’ =>’Name1′ ),

‘1′ => array (‘fid’ => 1, ‘tid’ => 2 , ‘name’ =>’Name2′ ),

‘2′ => array (‘fid’ => 1, ‘tid’ => 5 , ‘name’ =>’Name3′ ),

‘3′ => array (‘fid’ => 1, ‘tid’ => 7 , ‘name’ =>’Name4′ ),

‘4′ => array (‘fid’ => 3, ‘tid’ => 9, ‘name’ =>’Name5′ )

);

function changeArrayStyle($arr){

foreach($arr as $key=>$value){

$result[$value[fid]][]=$value;

}

return array_values($result);

}

$arr2=changeArrayStyle($arr1);

echo “

”;

var_dump($arr2);

最新的PHP面试题及答案 2

精选php面试题及答案

一、基础题

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

<?php $str1 = null;$str2 = false;

echo $str1==$str2 ? 相等 : 不相等;

$str3 = ;

$str4 = 0;

echo $str3==$str4 ? 相等 : 不相等;

$str5 = 0;

$str6 = 0;

echo $str5===$str6 ? 相等 : 不相等;

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

<?php $a1 = null;$a2 = false;

$a3 = 0;

$a4 = ;

$a5 = 0;

$a6 = null;

$a7 = array();

$a8 = array(array());

echo empty($a1) ? true : false;

echo empty($a2) ? true : false;

echo empty($a3) ? true : false;

echo empty($a4) ? true : false;

echo empty($a5) ? true : false;

echo empty($a6) ? true : false;

echo empty($a7) ? true : false;

echo empty($a8) ? true : false;

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

<?php $test = aaaaaa;$abc = & $test;

unset($test);

echo $abc;

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

<?php $count = 5;function get_count(){

static $count = 0;

return $count++;

}

echo $count;

++$count;

echo get_count();

echo get_count();

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

<?php $GLOBALS[var1] = 5;$var2 = 1;

function get_value(){

global $var2;

$var1 = 0;

return $var2++;

}

get_value();

echo $var1;

echo $var2;

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

<?php function get_arr($arr){unset($arr[0]);

}

$arr1 = array(1, 2);

$arr2 = array(1, 2);

get_arr(&$arr1);

get_arr($arr2);

echo count($arr1);

echo count($arr2);

7. 使用五种以上方式获取一个文件的扩展名

要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,

必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如 get_ext1($file_name), get_ext2($file_name)

二、算法题

1. 使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组

2. 使用PHP描述顺序查找和二分查找(也叫做折半查找)算法,顺序查找必须考虑效率,对象可以是一个有序数组

3. 写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数【答案】

(以下答案不一定是最好的,只是一个简单的参考)

相关文章: