大学生就业难已经成为社会一个难以回避的问题,同时求职技巧也就显得尤为重要,扬长避短掌握技巧是关键。感谢阅读《PHP笔试题》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
1.写出如下程序的输出结果
$str1=null;
$str2=false;
echo$str1==$str2?相等:不相等;
//相等
$str3=;
$str4=0;
echo$str3==$str4?相等:不相等;
//相等
$str5=0;
$str6=0;
echo$str5===$str6?相等:不相等;
//不相等
?
2.写出如下程序的输出结果
$a1=null;
$a2=false;
$a3=0;
$a4=;
$a5=0;
$a6=null;
$a7=array;
$a8=array(array);
echoempty($a1)?true:false;//true
echoempty($a2)?true:false;//true
echoempty($a3)?true:false;//true
echoempty($a4)?true:false;//true
echoempty($a5)?true:false;//true
echoempty($a6)?true:false;//false
echoempty($a7)?true:false;//true
echoempty($a8)?true:false;//false
?
3.写出如下程序的输出结果
$test=aaaaaa;
$abc=$test;
unset($test);
echo$abc;//aaaaaa
?
4.写出如下程序的输出结果
functionget_count{
static$count=0;
return$count++;
}
echo$count;//5
++$count;
echoget_count;//0
echoget_count;//1
?
5.写出如下程序的输出结果
$GLOBALS[var1]=5;
$var2=1;
functionget_value{
global$var2;
$var1=0;
return$var2++;
}
get_value;
echo$var1;//0
echo$var2;//2
?
6.写出如下程序的输出结果
functionget_arr($arr){
unset($arr[0]);
}
$arr1=array(1,2);
$arr2=array(1,2);
get_arr($arr1);
get_arr($arr2);
echocount($arr1);//1
echocount($arr2);//2
?
ZC530.com小编推荐
大学生毕业后面临的第一件事情肯定就是面试求职了,那么相应的求职技巧就很重要。感谢阅读《PHP笔试题含答案》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
1、用PHP打印出前一天的时间,格式是2006-5-1022:21:21
//echodate(Y-m-dH:i:s,time-60*60*24
echodate(Y:m:dH:i:s,strtotime(-1day));
?
2、echo,print,print_r的区别
echo是语言结构,无返回值;print功能和echo基本相同,不同的是print是函数,有返回值;print_r是递归打印,用于输出数组对象
3、能够使HTML和PHP分离开使用的模板
somuch,其实PHP本身就是一种模版引擎,我用过的是smarty,常见的还有PHPLib,FastTemplate,Savant这里有个模板引擎列表:///forums/showthread.php?t=123769
4.如何实现PHP、JSP交互?
题目有点含糊不清,SOAP,XML_RPC,Socketfunction,CURL都可以实现这些,如果是考PHP和Java的整合,PHP内置了这种机制(如果考PHP和.NET的整合,也可以这么回答),例如$foo=newJava(java.lang.System);
5.使用哪些工具进行版本控制?
CVS和SVN,SVN号称下一代CVS,功能强大,不过CVS是老牌,市占率很高.我一直用SVN,题目是问用什么工具,呃,这个可能需要这么回答:CVSServeronApache作服务端,WinCVS作客户端;SubversiononApache/DAV做服务端,TortoiseSVN做客户端,或者Subclipse做客户端
6.如何实现字符串翻转?
其实PHP本身就有字符串翻转的函数:strrev,不妨试试echostrrev($str);不过所有的这三种方法都不能解决中文字符串翻转的问题,会出错的。
functionreverse($var)
{
$res=;
for($i=0,$j=strlen($var);$i$j;$i++)
{
$res=$var[$i].$res;
}
return$res;
}
$tmpvar=wofang;
$res=reverse($tmpvar);
echo$res;
?
7、优化MYSQL数据库的方法。
(1).数据库设计方面,这是DBA和Architect的责任,设计结构良好的数据库,必要的时候,去正规化(英文是这个:denormalize,中文翻译成啥我不知道),允许部分数据冗余,避免JOIN操作,以提高查询效率
(2).系统架构设计方面,表散列,把海量数据散列到几个不同的表里面.快慢表,快表只留最新数据,慢表是历史存档.集群,主服务器Readwrite,从服务器readonly,或者N台服务器,各机器互为Master
(3).(1)和(2)超越PHPProgrammer的要求了,会更好,不会没关系.检查有没有少加索引
(4).写高效的SQL语句,看看有没有写低效的SQL语句,比如生成笛卡尔积的全连接啊,大量的GroupBy和orderby,没有limit等等.必要的时候,把数据库逻辑封装到DBMS端的存储过程里面.缓存查询结果,explain每一个sql语句
(5).所得皆必须,只从数据库取必需的数据,比如查询某篇文章的评论数,selectcount(*)wherearticle_id=?就可以了,不要先select*wherearticle_id=?然后msql_num_rows.
只传送必须的SQL语句,比如修改文章的时候,如果用户只修改了标题,那就updatesettitle=?wherearticle_id=?不要setcontent=?(大文本)
(6).必要的时候用不同的存储引擎.比如InnoDB可以减少死锁.HEAP可以提高一个数量级的查询速度
8、谈谈事务处理
A给B的账户转账50美元的例子
在求职过程中需要注意的问题您知道?需要的求职技巧您知道?职场小编告诉你,在求职过程中切忌夸夸其谈,切忌过于自信,切忌自我炫耀,切忌左顾右盼以及切忌形象糟糕。感谢阅读《PHP笔试题及答案》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量(1)中;而链接到当前页面的的前一页面URL记录在预定义变量(2)中
//本页地址,SCRIPT_NAME也可以:php/test.php
echo$_SERVER[PHP_SELF].
;
//链接到当前页面的前一页面的URL地址:
echo$_SERVER[HTTP_REFERER].
;
//其它的见参考手册:语言参考》变量》预定义变量
//前执行脚本的绝对路径名:D:Inetpubwwwrootphpest.php
echo$_SERVER[SCRIPT_FILENAME].
;
//正在浏览当前页面用户的IP地址:127.0.0.1
echo$_SERVER[REMOTE_ADDR].
;
//查询(query)的字符串(URL中第一个问号?之后的内容):id=1bi=2
echo$_SERVER[QUERY_STRING].
;
//当前运行脚本所在的文档根目录:d:inetpubwwwroot
echo$_SERVER[DOCUMENT_ROOT].
;
?
2.执行程序段将输出__。
//参考手册》语言参考》运算符》算术运算符》%为取模运算,输出0
echo8%(-2).
;
//取模$a%$b在$a为负值时的结果也是负值。输出-2
echo((-8)%3).
;
//输出2
echo(8%(-3)).
;
?
3.在HTTP1.0中,状态码401的含义是____;如果返回找不到文件的提示,则可用header函数,其语句为____。
答:401表示未授权;header(HTTP/1.0404NotFound);[见参考手册》函数参考》HTTP函数》header]
4.数组函数arsort的作用是____;语句error_reporting(2047)的作用是____。
答:arsort:对数组进行逆向排序并保持索引关系error_reporting(2047)的作用是:reportAllerrorsandwarnings
5.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉):
$script=以下内容不显示:;
echopreg_replace(/].*?.*?/si,替换内容,$script);
?
6.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句____动态装载PHP模块,
然后再用语句____使得Apache把所有扩展名为php的文件都作为PHP脚本处理。
答:LoadModulephp5_modulec:/php/php5apache2.dll;AddTypeapplication/x-httpd-php.php
见参考手册》目录》II.安装与配置》6.Windows系统下的安装》MicrosoftWindows下的Apache2.0.x
7.语句include和require都能把另外一个文件包含到当前文件中,它们的区别是____;为了避免多次包含同一文件,可以用语句____来代替它们。
答:在如何处理失败时,include产生一个警告而require则导致一个致命错误;require_once/include_once
8.一个函数的参数不能是对变量的引用,除非在php.ini中把____设为on.
答:allow_call_time_pass_referenceboolean:是否启用在函数调用时强制参数被按照引用传递,见参考手册》附录G
9.SQL中LEFTJOIN的含义是__,如果tbl_user记录了学生的姓名(name)和学号(ID),
tbl_score记录了学生(有的学生考试以后被开除了,没有其记录)的学号(ID)和考试成绩(score)以及考试科目(subject),要想打印出各个学生姓名及对应的的各科总成绩,则可以用SQL语句____.
答:自然左外连接
createdatabasephpinterview;
usephpinterview
createtabletbl_user
(
IDintnotnull,
namevarchar(50)notnull,
primarykey(ID)
大学生毕业后面临的第一件事情肯定就是面试求职了,那么相应的求职技巧就很重要。感谢阅读《普通PHP程序员笔试题》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
1.用PHP打印出前一天的时间,打印格式是2007年5月10日22:21:21
2.PHP代码如下:
$a=hello;
$b=$a;
unset($b);
$b=world;
echo$a;
其结果是?
3.PHP代码如下:
$str=cd;
$$str=landog;
$$str.=ok;
echo$cd;
其结果是?
4.用PHP写一段代码,实现不使用第3个变量,交换$a、$b的值,$a、$b的初始值自己定。
5.根据题目要求,用PHP写出代码。
表名User
IDNameTelContentDate
1张三13333663366大专毕业2006-10-11
3张三13612312331本科毕业2006-10-15
5张四020-5566556中专毕业2006-10-15
4王五13521212125大专毕业2006-12-25
2
6
假设数据库连接如下:
$mysql_db=mysql_connect(local,root,pass);
@mysql_select_db(DB,$mysql_db);
(1)查询出所有Name等于张三的记录,并输出。
(2)按ID升序查询,只返回排序后的前3条记录,并输出。
6.javascript能否定义二维数组,如果不能你如何解决?
7.假设a.html和b.html在同一个文件夹下面,用javascript实现当打开a.html五秒钟后,自动跳转到b.html。
8.有两个文件a.html和a.php,代码如下:
a.html
a.php
$user_name=$_GET[user_name];
$user_tel=$_GET[user_tel];
$user_email=$_GET[user_email];
$user_add=$_GET[user_add];
echo用户名:$user_name
电话:$user_tel
邮箱:$user_email
地址:$user_add
;
?
(1)请画出a.html在浏览器的显示效果图。
(2)在a.html中输入:用户名=张三,电话=020-38259977,邮箱=sunrising@srtek.cn,地址=广州升瑞,按提交按钮后输出结果是?
9.你是否使用过版本控制工具,如果有,请简要说明。
10.利用CSS样式表定义已访问的超链接字体大小为14pt,颜色为red。
11.移动任意一位数或符号,使等式成立,102=101-1。注:是移动不是交换,等号不能分开。
12.规律题,3、1、4、1、5、9、2、(),请按照规律在括号内写出下一表达式。
大学生就业难已经成为社会一个难以回避的问题,同时求职技巧也就显得尤为重要,扬长避短掌握技巧是关键。感谢阅读《新浪网技术PHP工程师部笔试题目》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
一、php基础知识
1、strlen与mb_strlen的作用分别是什么
2、下列哪个函数是用正则表达式将字符串分割到数组中
A、Split
B、implode
C、explode
D、join
3、写出下列程序的输出结果
$x=87;
$y=($x%7)*16;
$z=$x$y?1:0;
echo$z;
?
4、写出smarty模板的特点
5、写出下列几个预定义全局变量的作用
$_SERVER['DOCUMENT_ROOT']
当前运行脚本所在的文档根目录。在服务器配置文件中定义。
$_SERVER['HTTP_HOST']
当前请求的Host:头部的内容
$_SERVER['REMOTE_ADDR']
正在浏览当前页面用户的IP地址
$_SERVER['HTTP_REFERER']
链接到当前页面的前一页面的URL地址
$_SERVER['SERVER_NAME']
当前运行脚本所在服务器主机的名称
$_FILES
包含有所有上传的文件信息。
$_FILES['userfile']['name']
客户端机器文件的原名称。
$_FILES['userfile']['type']
文件的MIME类型,如果浏览器提供此信息的话。一个例子是image/gif。不过此MIME类型在PHP端并不检查,因此不要想当然认为有这个值。
$_FILES['userfile']['size']
已上传文件的大小,单位为字节。
$_FILES['userfile']['tmp_name']
文件被上传后在服务端储存的临时文件名。
$_FILES['userfile']['error']
和该文件上传相关的错误代码。
6、include和require都能把另外一个文件包含到当前文件中,他们有什么区别?Include和include_once又有什么区别?
7、写出一个能创建多级目录的PHP函数
二、操作系统
1请解释下列10个shell命令的用途
top、ps、mv、find、df、cat、chmod、chgrp、grep、wc
2、写出下列服务的用途和默认端口
ftp、ssh、http、telnet、https
三、面向对象
1、写出php的public、protected、private三种访问控制模式的区别
2、写出下列程序的输出结果
classa{
protected$c;
publicfunction
a{
$this-c=10;
}
}
classbextendsa
{
publicfunctionprint_data{
return
$this-c;
}
}
$b=newb;
echo$b-print_data;
?
3、设计模式考察:请用单态设计模式方法设计类满足如下需求
请用PHP5代码编写类实现在每次对数据库连接的访问中都只能获得唯一的一个数据库连接,具体连接数据库的详细代码忽略,请写出主要逻辑代码
四、数据库
1、写出下面2个PHP操作Mysql函数的作用和区别
mysql_num_rows
mysql_affected_rows
2、sql语句应该考虑哪些安全性?
3、简单描述mysql中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两方面)
五、系统分析
假设有一个博客系统,数据库存储采用mysql,用户数量为1000万,预计文章总数为10亿,每天有至少10万的更新量,每天访问量为5000万,对数据库的读写操作的比例超过10:1,你如何设计该系统,以确保其系统高效,稳定的运行?
提示:可以从数据库设计,系统框架,及网络架构方面进行描述,可以自由发挥
大学生毕业后面临的第一件事情肯定就是面试求职了,那么相应的求职技巧就很重要。感谢阅读《PHP面试题大全》内容,职场资讯网小编向您推荐一些求职技巧知识,希望能够帮到您。
基础题:
1.表单中get与post提交方法的区别?
答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.
2.session与cookie的区别?
答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放
cookie:用来存储连续訪問一个頁面时所使用,是存储在客户端,对于Cookie来说是存储在用户WIN的Temp目录中的。
两者都可通过时间来设置时间长短
3.数据库中的事务是什么?
答:事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用于所有其他数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消。
简述题:
1、用PHP打印出前一天的时间格式是2006-5-1022:21:21(2分)
答:echodate(Y-m-dH:i:s,strtotime(-1days));
2、echo,print,print_r的区别(3分)
答:echo是PHP语句,print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)
print只能打印出简单类型变量的值(如int,string)
print_r可以打印出复杂类型变量的值(如数组,对象)
echo输出一个或者多个字符串
3、能够使HTML和PHP分离开使用的模板(1分)
答:Smarty,Dwoo,TinyButStrong,TemplateLite,Savant,phemplate,XTemplate
5、使用哪些工具进行版本控制?(1分)
答:cvs,svn,vss;
6、如何实现字符串翻转?(3分)
答:echostrrev($a);
7、优化MYSQL数据库的方法。(4分,多写多得)
答:
1、选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置NOTNULL,例如省份,性别,最好设置为ENUM
2、使用连接(JOIN)来代替子查询:
a.删除没有任何订单客户:DELETEFROMcustomerinfoWHEREcustomeridNOTin(SELECTcustomeridFROMorderinfo)
b.提取所有没有订单客户:SELECTFROMcustomerinfoWHEREcustomeridNOTin(SELECTcustomeridFROMorderinfo)
c.提高b的速度优化:SELECTFROMcustomerinfoLEFTJOINorderidcustomerinfo.customerid=orderinfo.customerid
WHEREorderinfo.customeridISNULL
3、使用联合(UNION)来代替手动创建的临时表
a.创建临时表:SELECTnameFROM`nametest`UNIONSELECTusernameFROM`nametest2`
4、事务处理:
a.保证数据完整性,例如添加和修改同时,两者成立则都执行,一者失败都失败
mysql_query(BEGIN);
mysql_query(INSERTINTOcustomerinfo(name)8iVALUES($name1);
mysql_query(SELECT*FROM`orderinfo`wherecustomerid=.$id);
mysql_query(COMMIT);
5、锁定表,优化事务处理:
a.我们用一个SELECT语句取出初始数据,通过一些计算,用UPDATE语句将新值更新到表中。
包含有WRITE(write)关键字的LOCKTABLE语句可以保证在UNLOCKTABLES命令被执行之前,
不会有其它的访问来对inventory进行插入、更新或者删除的操作
mysql_query(LOCKTABLEcustomerinfoREAD,orderinfoWRITE);
mysql_query(SELECTcustomeridFROM`customerinfo`whereid=.$id);
mysql_query(UPDATE`orderinfo`SETordertitle=$titlewherecustomerid=.$id);
mysql_query(UNLOCKTABLES);
6、使用外键,优化锁定表
a.把customerinfo里的customerid映射到orderinfo里的customerid,
任何一条没有合法的customerid的记录不会写到orderinfo里
CREATETABLEcustomerinfo
(
customeridINTNOTNULL,
PRIMARYKEY(customerid)
)TYPE=INNODB;
CREATETABLEorderinfo
(
orderidINTNOTNULL,
customeridINTNOTNULL,
PRIMARYKEY(customerid,orderid),
FOREIGNKEY(customerid)REFERENCEScustomerinfo
(customerid)ONDELETECASCADE
)TYPE=INNODB;
注意:ONDELETECASCADE,该参数保证当customerinfo表中的一条记录删除的话同时也会删除order
表中的该用户的所有记录,注意使用外键要定义事务安全类型为INNODB;
7、建立索引:
a.格式:
(普通索引)-
创建:CREATEINDEX索引名ONtablename(索引字段)
修改:ALTERTABLEtablenameADDINDEX[索引名](索引字段)
创表指定索引:CREATETABLEtablename([...],INDEX[索引名](索引字段))
(唯一索引)-
创建:CREATEUNIQUE索引名ONtablename(索引字段)
修改:ALTERTABLEtablenameADDUNIQUE[索引名](索引字段)
创表指定索引:CREATETABLEtablename([...],UNIQUE[索引名](索引字段))
(主键)-
它是唯一索引,一般在创建表是建立,格式为:
CREATATABLEtablename([...],PRIMARYKEY[索引字段])
8、优化查询语句
相关文章
最新更新