搜索
当前所在位置: 主页 > 好范文 >

php面试题与答案

发布时间:2024-10-31 18:46 作者:admin 点击: 【 字体:

php面试题与答案

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。面试题指在面试过程中所出的面试题目。面试题指在面试过程中所出的面试题目

精选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内置函数【答案】

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


腾讯php程序员面试题目及答案标签:面试笔试时间:2021-03-01 【yjbys.com - 面试笔试】

设计任务:

1、最近总有人骚扰我们的投票模块,需要你来设计一个投票限制的东东

要求如下:

1)要求每个QQ号码(假设此QQ号码在UNIT32 内可以表示)10分钟这内只能投5票。

2)我们的用户很踊跃,平均每天要有2000万人左右通过此程序投票。

说明:

1)无需写代码,只需要图跟文字即可。

2)对于关键逻辑,请用图加代码表示出来,这也是对你文字表达能力的`一个考验。

3)对你能想到的所有的边界条件列出来,这是对你逻辑思维全面与敏捷性的考验。

4)存储部分,尽你所能吧。如果,你需要一个自己设计的存储层,那么把这个存储层的实现,用文字+图片方式描述清楚,要是设计合理,你会获得华丽的奖分.

解答:

核心问题:如何统计10分钟之内投了5票?

首先:以秒为键切分数据集,10*60=600个时间戳桶,并添加一个Forbid令牌桶

然后:每个数据集内,以qq号码为键,vote次数为值

OK,已经成功转换为key-value方式存储,2000万的日投票,除以86400秒,并发231.48rps,使用memcache能够轻松胜任。

数据集ID:201006072134

【QQ号码:Vote次数】

201006072134 | 201006072135 | 201006072136

【12345:3】 | 【12345:3】 | 【12345:3】

【88888:2】 | 【88888:3】 | 【88888:3】
比较基础的php面试题及答案标签:笔试题目时间:2020-11-25 【yjbys.com - 笔试题目】 编程题: 1. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名 例如: http://www.feedwhy.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .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); 2. 在 HTML 语言中,页面头部的 meta 标记可以用来输出文件的编码格式,以下是一个标准的 meta 语句
比较基础的php面试题及答案-填空题标签:笔试题目时间:2020-11-25 【yjbys.com - 笔试题目】 填空题: 1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量__$_SERVER[ PHP_SELF ]__中;而链接到当前页面的URL记录在预定义变量__$_SERVER[ HTTP_REFERER ]__ 2.执行程序段将输出__0__。 3.在HTTP 1.0中,状态码 401 的含义是____;如果返回 找不到文件 的提示,则可用 header 函数,其语句为____。 4.数组函数 arsort 的`作用是__对数组进行逆向排序并保持索引关系__;语句 error_reporting(2047)的作用是__报告所有错误和警告__。 5.PEAR中的数据库连接字符串格式是____。 6.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把scrīpt标记及其内容都去掉):preg_replace( //si , newinfo , $script); 7.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块,然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。 LoadModule php5_module c:/php/php5apache2.dll , AddType application/x-httpd-php .php,
六道php面试题附答案标签:笔试题目时间:2020-11-25 【yjbys.com - 笔试题目】 1、不用新变量直接交换现有两个变量的值. (考php基本功) 答案:list($a, $b) = array($b, $a); 2、PHP数字金额转大小格式,同时说明思路 (考数组掌握) 3、SQL查询语句如下: select * from table where (ID = 10) or (ID = 32) or (ID = 22) or (ID = 76) or (ID = 13) or (ID = 44) 让结果按10,32,22,76,13,44的顺序检索出来,请问如何书写? (sql能力) 4、简单写一个上传文件程序,要求同时上传文件数量可以人为控制 (逻辑能力) 5、php同时调用3个数据库中的一个表的`信息(架设A.a.aid=B.b.bid=C.c.cid),请说明思路及书写部分代码 6、现有一IM软件,使用id、email做为注册条件,假设已注册1040人,有一zh_cn论坛,使用id、email做为注册条件,假设已注册200人,有一en_us论坛,使用id、email做为注册条件,假设已注册150人 要求:将三者同步,使用统一的注册流程 ,写出设计思路
PHP面试题附答案标签:笔试题目时间:2020-11-25 【yjbys.com - 笔试题目】 1. Which of the following will not add john to the users array? 1. $users[] = john 2. array_add($users, john ); 3. array_push($users, john ); 4. $users ||= john Answer: 2,4 2. What s the difference between sort(), asort() and ksort(),rsort()? Under what circumstances would you use each of these? sort(): 本函数对数组的值进行排序。当本函数结束时数组单元将被从最低到最高重新安排,array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。 asort(): 这个函数将数组的值重新排序,由小至大排列。数组的'索引亦跟着值的 顺序而变动。当您在程序中需要重新整理数组值的 顺序时,就可以使用这个函数。 ksort(): 对数组按照键名排序,保留键名到数据的关联。本函数主要用于关联数组。 rsort(): 本函数对数组进行逆向排序(最高到最低)。与sort()执行相反的操作。

阅读全文
返回顶部