PHP数组面试考题

PHP数组面试考题

书,是人类共同的精神财富,是人类进步的阶梯。以下是为大家搜索整理的PHP数组面试考题,希望能给大家带来帮助!

1.写函数创建长度为10的数组,数组中的元素为递增的奇数,首项为1.

代码如下:

function arrsort($first,$length){

$arr = array();

for($i=$first;$i<=$length;$i++){

$arr[] = $i*2-1;

}

return $arr;

}

$arr1 = arrsort(1,10);

print_r($arr1);

输出:

代码如下:

Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 [5] => 11 [6] => 13 [7] => 15 [8] => 17 [9] => 19 )

2.创建长度为10的数组,数组中的数为递增的等比数,比值为3,首项为1.

代码如下:

//$num为比值

function arrsort($first,$length,$num){

$arr= array();

for($i=$first;$i<=$length;$i++){

//pow($num,$i-2);返回$num的($i-2)次方

$arr[] = $num*pow($num,$i-2);

}

return $arr;

}

$arr1 = arrsort(1,10,3);

print_r($arr1);

输出:

代码如下:

Array ( [0] => 1 [1] => 3 [2] => 9 [3] => 27 [4] => 81 [5] => 243 [6] => 729 [7] => 2187 [8] => 6561 [9] => 19683 )

3.求数组中最大数的下标.

代码如下:

function maxkey($arr){

$maxval = max($arr);

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

if($maxval == $val){

$maxkey = $key;

}

}

return $maxkey;

}

$arr = array(0,-1,-2,5,"b"=>15,3);

echo maxkey($arr);

输出:

代码如下:

b

4.创建一个长度为10的数组,数组中的元素满足斐波拉契数列的规律.

( 斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*). 特别指出:第0项是0,第1项是第一个1。)

代码如下:

function arrFibo($len){

$arr[0] = 0;

$arr[1] = 1;

for($i=2;$i<$len;$i++){

$arr[$i] = $arr[$i-1]+$arr[$i-2];

}

return $arr;

}

echo "

";

print_r(arrFibo(10));

echo "

";

输出:

代码如下:

Array

(

[0] => 0

[1] => 1

[2] => 1

[3] => 2

[4] => 3

[5] => 5

[6] => 8

[7] => 13

[8] => 21

[9] => 34

)

5.计算数组中最大数和最小数的差.

两种方法:

①max/min

输出:

代码如下:

102

②sort把元素按从小到大排序/rsort吧元素按从大到小排序

代码如下:

function arrsub($arr){

sort($arr);

$min = $arr[0];

rsort($arr);

$max = $arr[0];

$sub = $max - $min;

return $sub;

}

$arr = array(-1,-2,100);

echo arrsub($arr);

输出:

102

6.写一个方法,将一个长度超过10的数组最后5项直接截取,不改变顺序变为前5项,如{1,2,3,4,5,6,7,8,9,10}变为{6,7,8,9,10,1,2,3,4,5}.

思路:先把数组截取相应的长度( array_slice ),再把2段数组拼接( array_merge )

代码如下:

function arrsort($arr){

$num = count($arr);

if($num > 10){

//array_slice($arr,起始位置,截取长度,保留索引(默认为false))

$arr_firstpart = array_slice($arr,0,$num-5,true);

$arr_lastpart = array_slice($arr,($num-5),5,true);

}else{

echo "数组不超过10个元素,请重新输入";

exit();

}

//拼接

$arr_new = array_merge($arr_lastpart,$arr_firstpart);

return $arr_new;

}

$arr = array("a"=>1,2,3,8,9,6,"b"=>5,-1,"c"=>8,0,7);

echo "

";

print_r($arr);

echo "= = = = = 拼接后 = = = = ";

print_r(arrsort($arr));

echo "

";

输出:

代码如下:

Array

(

[a] => 1

[0] => 2

[1] => 3

[2] => 8

[3] => 9

[4] => 6

[b] => 5

[5] => -1

[c] => 8

[6] => 0

[7] => 7

)

= = = = = 拼接后 = = = =

代码如下:

Array

(

[b] => 5

[0] => -1

[c] => 8

[1] => 0

[2] => 7

[a] => 1

[3] => 2

[4] => 3

[5] => 8

[6] => 9

[7] => 6

)

当数组不满足长度为10时:

代码如下:

$arr = array("a"=>1,2,3);

输出:

代码如下:

Array

(

[a] => 1

[0] => 2

[1] => 3

)

= = = = = 拼接后 = = = =

数组不超过10个元素,请重新输入

7.将两个数组连接成一个新数组.

方法①使用array_merge()函数

代码如下:

array_merge($arr1,$arr2);

方法②使用array_merge_recursive()函数递归追加数组

( array_merge_recursive() 函数与 array_merge() 函数 一样,将一个或多个数组的元素的合并起来,一个数组中的值附加在前一个数组的后面。并返回作为结果的数组。

但是,与 array_merge() 不同的是,当有重复的键名时,值不会被覆盖,而是将多个相同键名的值递归组成一个数组。)

代码如下:

$arr = array("a"=>1,"b"=>2,3);

$arr2 = array("a"=>Dee,3,5);

$arr3 = array_merge($arr,$arr2);

$arr4 = array_merge_recursive($arr,$arr2);

echo "

";

print_r($arr3);

echo " = = = = = ";

print_r($arr4);

echo "

";

输出:

代码如下:

Array

(

[a] => Dee

[b] => 2

[0] => 3

[1] => 3

[2] => 5

)

= = = = =

代码如下:

Array

(

[a] => Array

(

[0] => 1

[1] => Dee

)

[b] => 2

[0] => 3

[1] => 3

[2] => 5

)

第一个输出的数组中索引为"a"的.值1被索引被第二个数组中索引为"a"的值Dee覆盖了。

方法③

代码如下:

function arrsort($arr1,$arr2){

$arr_new = $arr1;

foreach($arr2 as $key=>$val){

$arr_new[] = $val;

}

return $arr_new;

}

$arr1 = array("a"=>1,"b"=>2,3);

$arr2 = array("a"=>Dee,"c"=>3,5);

echo "

";

print_r(arrsort($arr1,$arr2));

echo "

";

输出:

代码如下:

Array

(

[a] => 1

[b] => 2

[0] => 3

[1] => Dee

[2] => 3

[3] => 5

)

如果是索引数组而且有重复的索引,则第二个数组中的这个重复的索引会被修改成新的索引。

8.数组逆序( 不能使用rsort函数,不能生成新数组 )

使用array_reverse()函数会创建新的数组,所以不能使用。

代码如下:

$arr = array("a","b","c",1,10);

$i = "";//要替换位置的数的下标

$j = "";//临时变量

$k = "";//被替换位置的数的下标

$len = count($arr);

$half_len = floor($len/2);//向下取整,取整的值是循环的次数

for($i=0;$i<$half_len;$i++){

$j = $arr[$i];

//判断数组个数奇偶

if($len%2!=0){ //奇数

$k = $half_len*2-$i;

}else{

//偶数

$k = $half_len*2-$i-1;

}

$arr[$i] = $arr[$k];

$arr[$k] = $j;

}

echo "

";

print_r($arr);

echo "

";

输出:

代码如下:

Array

(

[0] => 10

[1] => 1

[2] => c

[3] => b

[4] => a

)

php学习之php预定义变量

给大家介绍下php学习中经常要用到的php预定义变量,通过预定义变量可以获取用户会话、用户操作系统的环境和本地操作系统的环境等信息。

$_SERVER['SERVER_ADDR'] 当前运行脚本所在的服务器的ip地址。

$_SERVER['SERVER_NAME'] 当前运行脚本所在服务器主机的名称。

$_SERVER['REQUEST_METHOD'] 访问页面时的请求方法。

$_SERVER['REMOTE_ADDR'] 正在浏览当前页用户的ip地址。

$_SERVER['REMOTE_HOST'] 正在浏览当前页用户的主机名。

$_SERVER['REMOTE_PORT'] 用户连接到服务器时所使用的端口。

$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径。

$_SERVER['SERVER_PORT'] 服务器所使用的端口。

$_SERVER['SERVER_SIGNATURE'] 包含服务器版本和虚拟主机名的字符串。

$_SERVER['DOCUMENT_ROOT'] 当前运行脚本所在的文档根目录。

$_COOKIE 通过HTTPCookie传递到脚本的信息。这些是由执行php脚本时,通过setcookie()设置的。

$_SESSION 包含与所有会话变量有关的信息。$_SESSION变量主要应用于会话控制和页面间值的传递。

$_POST 通过post方法传递的参数信息。

$_GET 通过get方法传递的参数信息。

$_GLOBALS 由所有已定义的全局变量组成的数组。变量名就是该数组的索引。它可以称得上是所有超级变 量的超级集合。

php数组面试题及答案

转载请注明出处学习一生 » PHP数组面试考题

学习

注会考试《税法》备考题

阅读(81)

本文为您介绍注会税法每日必背题,内容包括注会考试历年税法题,注会的税法怎么备考,注会考试税法科目各题型答题技巧。注会考试《税法》备考题税法即税收法律制度,是国家权力机关和行政机关制定的用以调整税收关系的法律规范的总称,是国家

学习

word考题

阅读(101)

本文为您介绍word文档怎么弄成模拟考题,内容包括word考试题库及答案,word怎么删除答案,word怎么快速删除大量重复的考题。word考题(附答案)考题是对地方两司大员的考核方式。清代对地方官的考核称为大计,每三年举行一次,其方式有考题与会覆

学习

骆驼祥子必考题及答案

阅读(82)

本文为您介绍骆驼祥子必考题及答案,内容包括骆驼祥子必考题及答案初一,骆驼祥子考题及答案,骆驼祥子必考题和答案。骆驼祥子必考题及答案《骆驼祥子》小说以城市贫民为主要描写对象,成功塑造了一系列的典型形象:祥子执着老实、虎妞蛮横泼

学习

描写人物的作文参考题目

阅读(93)

本文为您介绍描写人物的作文参考题目,内容包括人物描写作文400以上,描写人物的作文300字,关于感动中国十大人物的作文题目。描写人物的作文参考题目家或多或少都会接触过作吧,特别是作中不可忽视的写作,写作要求语动丰富,可读性强。优秀的

学习

安全文明驾驶知识考题

阅读(82)

本文为您介绍安全文明驾驶知识考题,内容包括安全文明驾驶知识考题答案,安全文明驾驶知识考题是科目几,粤考运安驾驶员安全知识考试试题。安全文明驾驶知识考题安全文明驾驶常识考试,是我国机动车驾驶人考试中的新内容,包括安全文明驾驶操

学习

浣溪沙晏殊考题

阅读(93)

本文为您介绍浣溪沙晏殊考题,内容包括浣溪沙晏殊考题及答案,浣溪沙晏殊一曲新词常见考题,浣溪沙晏殊翻译。浣溪沙晏殊考题这首诗表达了作者对美好事物的留恋,对渐消的惋惜,这是作者的创作思绪,其间流露出作者那些淡淡的惆怅和哀愁,即含蓄又

学习

一道特殊的考题作文

阅读(93)

本文为您介绍一道特殊的考题作文,内容包括一道特殊的考题作文600字,一次特殊的军训作文,一场特殊的考试作文。一道特殊的考题作文在日常的学习、工作、生活中,大家对作文都不陌生吧,借助作文人们可以实现文化交流的目的。你知道作文怎样写

学习

牛顿环课后思考题答案

阅读(126)

本文为您介绍牛顿环课后思考题答案,内容包括大学物理牛顿环课后思考题答案,牛顿环实验报告思考题,牛顿环课后题。牛顿环课后思考题答案在平日的学习中,相信大家一定都接触过知识点吧!知识点是知识中的最小单位,最具体的内容,有时候也叫“考

学习

高考作文的题目

阅读(89)

本文为您介绍2021高考作文的题目,内容包括河南高考作文题目是什么,高考试卷的作文题目,高考作文最好的题目。2021高考作文的题目在平平淡淡的日常中,大家或多或少都会接触过作文吧,作文是一种言语活动,具有高度的综合性和创造性。那么一般

学习

以考题为话题的作文

阅读(128)

本文为您介绍以试卷为话题的作文,内容包括以考题为话题的作文800字,以考题为话题的作文怎么写,以考题为话题的作文名字。以考题为话题的作文(通用11篇)大家都经常看到作文的身影吧,尤其是在作文中占有重要地位的话题作文,话题作文具有自由性

学习

小学音乐优秀课件

阅读(125)

本文为您介绍人音版小学音乐课件,内容包括小学音乐教案及ppt课件,小学音乐精美课件,小学音乐优质课件。小学音乐优秀课件(精选10篇)作为一名优秀的教育工作者,很有必要精心设计一份课件,课件是教材及大纲与课堂教学的纽带和桥梁。那么什么样

学习

音乐课件加伏特舞曲

阅读(67)

本文为您介绍音乐加伏特舞曲教材分析,内容包括加伏特舞曲课件,加伏特舞曲教材分析,加伏特舞曲律动创编。音乐课件加伏特舞曲作为一位无私奉献的人民教师,时常会需要准备好教案,教案是备课向课堂教学转化的关节点。来参考自己需要的教案吧!

学习

小学音乐课件

阅读(105)

本文为您介绍1-6年级小学音乐课件教案,内容包括人音版小学音乐课件,小学音乐教案及ppt课件,小学音乐课件资源推荐。小学音乐课件(精选8篇)课件是根据教学大纲的要求,经过教学目标确定,教学内容和任务分析,教学活动结构及界面设计等环节,而加以

学习

音乐知识课件

阅读(106)

本文为您介绍音乐知识课件,内容包括音乐基础知识ppt,音乐优质课件,有关音乐知识的课件。音乐知识课件在我们上学期间,看到知识点,都是先收藏再说吧!知识点是传递信息的基本单位,知识点对提高学习导航具有重要的作用。你知道哪些知识点是真正

学习

注会考试《税法》备考题

阅读(81)

本文为您介绍注会税法每日必背题,内容包括注会考试历年税法题,注会的税法怎么备考,注会考试税法科目各题型答题技巧。注会考试《税法》备考题税法即税收法律制度,是国家权力机关和行政机关制定的用以调整税收关系的法律规范的总称,是国家

学习

word考题

阅读(101)

本文为您介绍word文档怎么弄成模拟考题,内容包括word考试题库及答案,word怎么删除答案,word怎么快速删除大量重复的考题。word考题(附答案)考题是对地方两司大员的考核方式。清代对地方官的考核称为大计,每三年举行一次,其方式有考题与会覆

学习

骆驼祥子必考题及答案

阅读(82)

本文为您介绍骆驼祥子必考题及答案,内容包括骆驼祥子必考题及答案初一,骆驼祥子考题及答案,骆驼祥子必考题和答案。骆驼祥子必考题及答案《骆驼祥子》小说以城市贫民为主要描写对象,成功塑造了一系列的典型形象:祥子执着老实、虎妞蛮横泼

学习

描写人物的作文参考题目

阅读(93)

本文为您介绍描写人物的作文参考题目,内容包括人物描写作文400以上,描写人物的作文300字,关于感动中国十大人物的作文题目。描写人物的作文参考题目家或多或少都会接触过作吧,特别是作中不可忽视的写作,写作要求语动丰富,可读性强。优秀的

学习

安全文明驾驶知识考题

阅读(82)

本文为您介绍安全文明驾驶知识考题,内容包括安全文明驾驶知识考题答案,安全文明驾驶知识考题是科目几,粤考运安驾驶员安全知识考试试题。安全文明驾驶知识考题安全文明驾驶常识考试,是我国机动车驾驶人考试中的新内容,包括安全文明驾驶操

学习

浣溪沙晏殊考题

阅读(93)

本文为您介绍浣溪沙晏殊考题,内容包括浣溪沙晏殊考题及答案,浣溪沙晏殊一曲新词常见考题,浣溪沙晏殊翻译。浣溪沙晏殊考题这首诗表达了作者对美好事物的留恋,对渐消的惋惜,这是作者的创作思绪,其间流露出作者那些淡淡的惆怅和哀愁,即含蓄又

学习

一道特殊的考题作文

阅读(93)

本文为您介绍一道特殊的考题作文,内容包括一道特殊的考题作文600字,一次特殊的军训作文,一场特殊的考试作文。一道特殊的考题作文在日常的学习、工作、生活中,大家对作文都不陌生吧,借助作文人们可以实现文化交流的目的。你知道作文怎样写

学习

六年级下册数学试卷及答案

阅读(82)

本文为您介绍六年级下册数学试卷及答案,内容包括六年级下册数学试卷及答案集,六年级下册数学期末考试卷打印版,六年级下册数学试卷及答案苏教版。六年级下册数学试卷及答案六年级下册数学试卷及答案有哪些?要想学习好,死记硬背是远远不够