导航:首页 > 编程语言 > php笔试题选择题及答案

php笔试题选择题及答案

发布时间:2025-01-23 18:18:04

php应聘笔试题

题目一:

<?php

echo -10%3;

?>

答案:-1。

考查:优先级。因为-的优先级比%求余的优先级低,也就是-(10%3)。

题目二:

print (int)pow(2,32);

答案:0

题目三:

//file1.php

<?php

$a = '123';

?>

//file2.php

<?php

echo include('file1.php');

?>

答案:1.

考查:返回值。因include()也是一个函数,有返回值。在成功时返回1,失败时返回错误信息。如果被包含的文件有return,则inculde()成功时返回该文件的`返回值。

题目四:

<?php

$count = 5;

function get_count() {

static $count = 0;

return $count++;

}

++$count;

get_count();

echo get_count();

?>

答案:1.

考查:static和++。因static $count,所以只在第一次调用get_count的时候对$count赋值为0,第二次再进来这个函数,则不会第二次赋值。其次就是return $count++和return ++$count了,前者先返回,后者先++再返回。

题目五:

<?php

$arr= array(0 =>1,'aa' =>2,3,4);

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

print($key == 'aa' ? 5 : $val);

}

?>

答案:5534.

考查:类型转换。因遍历数组第一次的时候,$key和aa的比较实际就是0和aa的比较,一个是int一个是string,这个时候会转换类型,将字符串转换为数字再与数字比较。所以0=='aa'就是0==0,所以为true,也就是输出5。虽然PHP是若类型语言,但是人家也有类型的好吗。

题目六:

<?php

echo count (false);

$a = count ("567") + count(null)

+ count(false);

echo $a;

?>

答案:2.

考查:count的用法。

因count()的官方解释“If the parameter

is not an array or not an object

with implemented Countable

interface, 1 will be returned.”.意思是说,如果不是数组或者对象的其他类型,返回1.那么这个值应该就是1+0+1了(boolen人家也是一个类型,虽然是讨厌的false)。NULL的意思是没有值,难道在计数函数中还能有1?

题目七:

<?php

$arr = array(1,2,3);

foreach($arr as &$val) {

$val += $val % 2 ? $val++ : $val--;

}

$val = 0;

print(join('',$arr));

?>

答案:330。

考查:++和&。

因foreach结束后的数组应该是array(3,3,7);最后给第三个元素赋值为0,所以就是330了。其中注意的是&,如果有&则是对原变量操作,如果没有,则是先生成一个新变量,然后给这个变量复制,最后操作的是这个新变量。

题目八:

<?php

echo intval((0.1+0.7)*10);

?>

答案:7。

考查:浮点数的概念。

因0.1+0.7=0.8 0.8*10=8 所以转换成整数后还是8?错!因为0.1+0.7=0.8是浮点数,0.8*10在数学计算中是正整数8,可是在计算机中它仍然是浮点数8,什么叫浮点数8?每一个看起来像整数的浮点数,其实都不是整数,比如这个8,它其实只是

7.9999循环,无限接近于8,转换成整数会舍弃小数部分,就是7喽。

题目九:

<?php

ini_set('display_errors',0);

$arr = array(1=>1,3=>3);

$i = 2;

$a = 'test' . isset($arr[$i]) ?

$arr[$i] : $i;

请问$a的值是什么?

A、test B、NULL C、2 D、test2

?>

答案:B。

考查:优先级因“."的优先级高于三元运算符"?:"。所以程序其实报错了。会说$arr的索引2不存在。

题目十:

<?php

$a = 3;

$b = 5;

if($a = 5 || $b = 7) {

$a++;

$b++;

}

echo $a . " " . $b;

?>

A、6 8 B、6 6 C、2 6 D、1 6 E、4 6

答案:D。

考查:优先级,基础概念,++。因“="的优先级低于“||”,所以先逻辑判断再赋值。也就是($a = (5 || $b = 7))。所以,最后其实给a赋值了,$a等于1.

Ⅱ 微创笔试,一面,二面全过程

微创笔试,一面,二面全过程 (2006)

先介绍一下自己,我是交大计算机系应届本科毕业生,主ID是php,因为比较喜欢本专业吧,找工作的目标就是纯技术类的。这次微创投的是软件开发工程师。

笔试:时间记不清楚了,黄浦区图书馆

两道HTML选择题目,sigh我居然全错了,打击得不得了,简历上面也不敢写精通B/S了…

两道编程题目,第一道忘了,用到函数递归调用就能解决了。第二道用到回溯法。虽然算法不难,但是在短时间写出来也不太容易,而且试卷上的空余地方很少,最好不要写错。我就是用联想宣讲会发的那只又黑又粗的绿笔,写成了一团。

然后又一道SQL的题目T-SQL我不太会写,就用PL/SQL写了,反正功能是实现了,以至于后来面面试我的时候还特意确认了这一点。

接下来就是英语了,几道选择填空,难度和高中英语差不多,然后一道问你有什么职业规划。

就这些差不多了,过的时间久了记不太清楚了。

第一次面试:12月15日,外滩中心21楼
外滩中心还要挂牌才能进,微创里面和微软里面的布局基本完全一样,包括墙面的色调,桌子大小什么的……电梯挺气派的.,真是见世面了,上面好像还有DTT和HP,恩,MM一定不少的…

第一轮在一个大房间里面,好多个组在面试,面我的有两个人,具体无非是自我介绍,做过项目什么的。我的简历上面提及了很多Web方面的东西,估计比较对他的胃口,问了一些细节和大体的实现,我就讲了讲什么B/S中的两层三层各自的特点,以及对比PHP说说ASP.net的优势云云。介绍一下开发的PHP Open Source项目…最后他拿出一张纸,让我写个程序:int a[10]随机放入0-9的数字(可以重复),编程序按顺序挑出5个使组成的5位数最大,注意顺序不能变的。我写好了给他讲一遍,没什么问题,第一轮就这样OK了,让我在外面等。

等了十多分钟,第二轮。在正对门的会议室里面。这次是一个人了,还是那套项目经历等等。期间好像有个经典的SQL Server问题就是如何实现分段Select,回答出来了让他很满意。还问了问DWORD是什么东西,最后又是拿出一张纸…说60000个数,每个都介于1和65535之间不重复,需要编一个函数用最小时间复杂度取得一个同样介于1和65535,但是不在那60000个数中的数。在最小时间复杂度的情况下还要最小空间复杂度。答案我就不详细说了,不过最小空间复杂度部分还是有点难度的,用到移位的操作什么的,反正写了整整一张A4,又讲了半天。还好也写得不错,然后他也点点头说当天的面试就完了,让我回来等。

总之前面两轮偏于技术。且两个程序都要写出具体C代码,不许用已有的类库。

第二次面试:12月22日,就是今天,外滩中心21楼
第一轮,大概是一个PM类型的人了,还是问了一下做过的项目…然后对我说刚刚看过我简历上的个人网站,说非常好…寒啊,我说那更新日期都是2002年的了,而且上面都是无聊的YY……居然被夸奖…(其实心里也很得意的)。又问了一下做过这么多项目中最困难的是什么,我说技术上没什么困难,困难的就是时间控制等等软件工程方面的。这一轮的技术方面偏于笼统架构,概念,很快也就结束了。被告之等晚上六点下一轮副总面试。

出去南京路逛了一会商场,发现MM真多啊,大饱眼福一番,而后吃了大娘水饺5点多就回去了。这一等就是等到快七点,到了副总办公室,这位副总先生还是非常kind的,感觉非常平易近人,进来先热情的和我握手,并且自我介绍一番。好感动啊,不象某些XX公司,地方不大架子还不小。进入正题,其实就是随便聊聊。问我有没有做过动网论坛之类的东西,sigh,动网论坛那几个开发者都是我好朋友的…非常熟悉,又把我那个PHP Open Source BBS吹了一番。他好像很惊讶的,又问了下我简历上面写了在CSDN当过XXXX,XXXX板板主……头一次有人在乎我这个,还有MCSE,CCNA之类的…也是头一次有人在乎…感觉受宠若惊阿。后来他说我表现还好,说比较喜欢我这种直爽的人,还说搞技术的就应该这样。又问了我今后的职业规划,我就随便说说。这一轮也就结束了,确认完
我什么时候能来实习,又起身热情的和我握手,这位副总真的要赞一下的!给人感觉非常好!

总之后两轮偏于笼统的架构理解以及个人性格。

回到寝室开始写这个,终于写完了,希望对明后天去面试的兄弟们有点帮助。其中表达多有不通(大学语文不及格的后果),见笑。

;

Ⅲ 谁能告诉我一些PHP开发常见的面试题呢

1、表单提交get和post有何区别?
答:get的方式是把数据在地址栏中发送,get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
2、用PHP打印出前一天的时间格式是2006-5-1022:21:21

复制代码代码示例:
echo date("Y-m-dH:i:s",time()-(3600*24));或echodate("Y-m-d H:i:s",strtotime("-1 day"));

3、php中include和require的区别?
这两种结构除了在如何处理失败之外完全一样。include()产生一个警告而 require() 则导致一个致命错误。换句话说,如果你想在遇到丢失文件时停止处理页面就用 require()。include() 就不是这样,脚本会继续运行。

4、echo(),print(),print_r()的区别
echo可以接多个参数,print只能接一个参数,它们都是PHP的语言结构,print_r是递规打印,用来打印数组或对象

5、能够使HTML和PHP分离开使用的模板
smarty,phplib,SmartTemplate

6、如何理解MVC模式?
首先说一下框架,框架:就是别人把一些底层,常用操作.比如数据操作(增,删,改,查)写好.你来直接用.其它的功能要自己来做。
MVC:设计模式,M模型,V显示,C控制.现在许多框架都是基于MVC来做的把逻辑和显示分开.比如你要换页面,只需要改V里面的东西并不需要再去变动程序!(详细的东西可以上网上查一下)

7、如何实现PHP、JSP交互?
PHP提供了支持JAVA的类库文件,或者通过HTTP协议来交互数据
8、使用哪些工具进行版本控制?
VSS,CVS,SVN
http://www.jbxue.com/php/25446.html

阅读全文

与php笔试题选择题及答案相关的资料

热点内容
表格中的文件夹怎样设置 浏览:476
em78单片机 浏览:960
splitjava空格 浏览:248
电脑怎么谷歌服务器地址 浏览:515
nx自定义工具启动宏命令 浏览:101
程序员怎么解决无法访问互联网 浏览:303
java访问本地文件 浏览:747
瓦斯琪服务器怎么用 浏览:22
安卓主题用什么app 浏览:747
修改服务器pci地址空间 浏览:321
程序员将来去哪里 浏览:966
虚幻5创建c无法编译 浏览:189
javaweb项目设计 浏览:407
国家反诈app紧急联系人怎么填 浏览:191
单片机旋转led 浏览:340
杜洋单片机官网 浏览:467
法国加密货币税务 浏览:28
stringslinux 浏览:944
gis服务器里文件如何处理 浏览:829
sec加密数字资产 浏览:930