php面试题汇总值得学习_第1页
php面试题汇总值得学习_第2页
php面试题汇总值得学习_第3页
php面试题汇总值得学习_第4页
php面试题汇总值得学习_第5页
已阅读5页,还剩14页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、用打印出前一天的时间格式是 2006-5-10 22:21:21date_default_timezone_set(PRC);/设置中国时区echo $today=date(Y-m-d h:i:s,(time()-86400); /昨天時間2、echo(),pr(),pr_r()的区别echo 是语句, pr和 pr_r 是函数,语句没有返回值,函数可以有返回值(即便没有用)pr pr只能打印出简单类型变量的值(如,string)_r 可以打印出复杂类型变量的值(如数组,对象)3.在和 C 语言 中,有两种类型的递增前递增和后递增,本质上来讲,前递增和后递增均增加了变量的值,并且对于变量的

2、影响是相同的。不同的是递增表达式的值。前递增,写做 “+$variable”,求增加后的值(在变量的值之前,增加变量的值,因而称之为“前递增”)。后递增,写做“$variable+”,求变量未递增之前的原始值(加变量的值,因而叫做“后递增”)。在变量的值之后,增$a = 1;$b = $a+;$b 的值爲 13.使用哪些工具进行版本控制?SNV(Subver)、VSS(源代码管理器)等4.如何实现字符串翻转?$luokuan = ABCDEFG-测试的啊-!一二三四五。;$n = mb_strlen($luokuan);/echo $n;$newluokuan = ;for ($i=$n;$i

3、=0;$i-)/$newluokuan.= substr($luokuan,$i,1);$newluokuan.= mb_substr($luokuan,$i,1,utf-8);echo $newluokuan;不考虑中英文混合,不是最优算法,不用库函数翻转字符串:5. 优化数据库的方法1、选取最适用的字段属性2、使用连接(JOIN)来代替子查询(Sub-Queries)3、使用联合(UNION)来代替手动创建的临时表4、事务5、锁定表6、使用外键7、使用索引6、能够使 HTML 和分离开使用的模板smarty,lib,SmartTemplate7、谈谈事务处理可以控制并发念.comit,ro

4、llback产生的数据同步提交,更新问题,就是一个锁的概8、apache+实现最大负载的方法问的太笼统,生成静态 html 页面,squid 反向,apache,的负载均衡.9、实现中文字串截取无乱码的方法。这个首先要考虑字符集,UTF-8 下一个汉字占 3 字节,GBK 下一个汉字占 2字节.可以自己写个函数来处理,别人也写了很多,当然也可以开启 mbstring 扩展库,使用里面的 mb_substr()等函数来截取10.var$empty=;var$null= NULL;var$bool= FALSE;var $notSet;var $array= array();$a = o;$b =

5、 &$a;unset($b);$b = world;what is $a?o,unset($b)只是了$b 自己和$a 的别名关系,并不会$a$a=1;$x=&$a;$b=$a+;whatis $b?1,先执行$b = $a,$a+再进行,所以$b 还是 1$x = empty($array);what is $x?trueorfalsetrue,$array 是空数组12.您是否用过版本控制? 如果有您用的版本控制的名字是?CVS:winCVS,是一个 CVS 的客户端VSS,微软的产品,比较适合中小型项目,只支持单人 checkout13.您是否用过模板引擎? 如果有您用的模板引擎的名字是

6、?SMARTY,大,30 多种的模板引擎,它是编译型模板,与lib 不太相同,功能强,支持 cache14.对于大流量的,您采用什么样的方法来解决量问题?squid反向选择!,最好的选择!当然,money 不是问题的话,增加带宽也是很好的15.用写出显示客户端IP 与服务器IP 的代码:echo $_SERVERREMOTE_ADDR /客户端 ipecho $_SERVERSERVER_ADDR /服务器端 ip面试题 3一、/编程1)id 文章 id title 文章标题某内容管理系统中,表 message 有如下字段content 文章内容 category_id 文章分类 id hit

7、s 点击量创建上表,写出语句createtablemessage(idNOT NULLAUTO_INCREMENTPRIMARYKEY,title varchar(100),content varchar(225),category_id,hits)mssql 語句:create tablemessage(ididentity(1,1) notnullprimary key,title varchar(100),content varchar(225),category_id,hits)2)同样上述内容管理系统:表 comment用户回复内容,字段如下comment_id 回复 idid 文章

8、 id,关联 message 表中的 idcomment_content 回复内容现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面文章 id 文章标题 点击量 回复数量用一个 SQL 语句完成上述查询,如果文章没有回复则回复数量显示为 0select a.id,a.title,a.hits, if(ifnull(b.id,false),count(*),0) as replay from message a left join comment b on a.id=b.idgroup by a.idorder by replay desc3)上述内容管理系

9、统,表 category 保存分类信息,字段如下 (3 分)category_id(4) not null auto_increment;categroy_name varchar(40) not null;用户输入文章时,通过选择下拉菜单选定文章分类写出如何实现这个下拉菜单function categoryList()$result= category)_query(select category_id,categroy_name fromor die(Invalid query: ._error();pr(n);while($rowArray=_fetch_array($result)pr

10、(.$rowArraycategroy_name.n);pr();三、程序1) 写出以下程序的输出结果$c?4:5;echo $a;?$a=42) 写出以下程序的输出结果$str=cd;四、1.请说明中传值与传的区别。什么时候传值什么时候传?传值只是把某一个变量的值传给了另一个变量,而地方。则说明两者指向了同一个2在中 error_reporting 这个函数作用?设定的错误级别。3请用正则表达式(Regular Expres)写一个函数验证电子邮件的格式是否正确。/*检查邮件地址是否为邮件地址,返回逻辑值*/function CheckAdr($str)return(eregi(_.0-9a

11、-z-+(0-9a-z0-9a-z-+.)+a-z2,3$,$str);4简述如何得到当前执行路径,包括所得到参数。 传给他的参数有参数 ,参数 2,参数说明:例一个3。传递参数的方法有可能是 GET 有可能是T,那么现在请写出类似:htt/script.?参数1=值1&参数2=值2的结果关于前执行路径感觉有点歧义:若是得到该在服务器上的绝对路径用 $_SERVERAPPL_PHYSICAL_PATH.若是该取获取所有参数:可以用以下方法:的 URL 则可以用获/获取t 的数据while (list($var, $value) =echo $var = $value/获取 get 方式的数据w

12、hile (list($var, $value) =echo $var = $valueeach($HTTP_T_VARS)n;each($HTTP_GET_VARS)n;5有一个一维数组,里面整形数据,请写一个函数,将他们按从大到小的顺序排列。要求执行效率高。并说明如何改善执行效率。(该函数必须自己实现,不能使用可以用冒泡排序函数)?function BubbleSort($str)for ($i=0;$i=$i;$j-)if($str$j+1_r(BubbleSort($str);6请举例说明在你的开发过程中用什么方法来加快页面的加载速度A生成静态 HTML,B生成 XMLC用 ZEND

13、加速面试题 81-如何通过 javascript 判断一个窗口是否已经被。varresult=window.open(/somepage.aspx);if(result=null)alert(浏览器不允许弹出窗口);2-写出 ses的运行机制用 户A ses会以ses站点Y,如果站点Y 执行了 ses_start();(以下假定_start()总是存在)那么会产生一个 ses_id,这个 ses.ini 里设置id 一般的形式保存到用户A(可以通过在.use_only_s 为 1,强制SESSEID 必须以 ;(传递。)。可用这时候 SESID 表现为$_SEses_name()函数来修改)用

14、户A 接着,这个sesid($_SE)就会在A 每次访问Y 的时候传送到站点Y。在站点Y 上,会有这么一个目录,是用来保存 SES的实际数据的。站点Y接收到 ses返回 SESid,然后通过 ses数据。id,来获得与 SES数据的关联,并3-防止 SQL 注射一般用函数。addslashes4- 写出发贴数最多的十个人名字的 SQL,利用下表:members(id,username,ts,pass,)SELECT username,count(*) as num FROM members by count(*) desc limit 10groupby username order5给你三个

15、数,写程序求出其最大值。$var1=1;$var2=7;$var3=8;$max=$var1$var2?$var1:$var2;$max=$max$var3?$max:$var3; echo $max;6)有一表列出来(maenu,sub,url),请用递归法写出一树形菜单,将所有的JS 打印?functionGenerate($id=0,$str=)$result= enu=$id);_query(select maenu,url,subfromwheremawhile($row=_fetch_array($result)echo$str.$rowurl.;Generate($rowsub,

16、$str.-);_free_result($result);$link=_connect(localhost,root,);_select_db(erview);Generate();_close($link)?7.执行程序段将输出 28.在 HTTP 1.0 中,状态码 401 的含义是401 (Unauthorized/未)401 (SC_UNAUTHORIZED)表示客户端在头信息中没有有效的时信息头受到保护的页面。这个响应必须包含一个 WWW-Authenticate 的9.数组函数 arsort 的作用是();语句 error_reporting(2047)的作用是()。arsort

17、 -对数组进行逆向排序并保持索引关系error_reporting(2047)所有的錯誤警告All errors and warnings, apported, exceptof level E_STRICT.10、请写出5 权限控制修饰符(3 分)private protected public11、请写出5 的构造函数和析构函数(2 分) construct destruct12、取得查询结果集总数的函数是?(1 分)_num_rows($res);13.在中,当前的名称(不包括路径和查询字符串)在预定义变量(1)中;而到当前页面的 URL在预定义变量(2)中。echo $_SERVER_

18、SELF; echo $_SERVERHTTP_REFERER;14. 在 HTTP 1.0 中,状态码 401 的含义是(4);如果返回“找不到文件”的提示,则可用 header 函数,其语句为(5)。(4)未(5) header(HTTP/1.0 404 Not Found);15 写出一个正则表达式,过虑网页上的所有 JS/VBS其内容都去掉):(9)。(即把 script 标记及Echo preg_replace(/.*?.*?/si,dfedfdddddddddd);16.以 Apache 模块的方式安装,在文件http.conf 中首先要用语句(10)动态装载件都作为模块,然后再用

19、语句(11)使得 Apache 把所有扩展名为处理。的文(10)LoadModule5_module 5apache2.dllD:/xp/apache/bin/(11) AddType application/x-httpd-source .sAddType application/x-httpd-.5 .4 .3 .phtml17.语句 include 和 require 都能把另外一个文件包含到当前文件中,它们的区别是(12);为了避免多次包含同一文件,可以用语句(13)来代替它们。(12) 发生异常时 include 产生警告 require 产生致命错误 (13) require_once()/include_once()18.类的属性可以序列化后保存到 ses用到的函数是(14)。中,从而以后可以恢复整个类,这要serialize() /unserialize()19.一个函数的参数不能是对变量的,除非在.ini 中把(15)设为 on.allow_call_time_pass_reference20.SQL 中 LEFT JOIN 的含义是(16)。(16) 自然左外连接21.如果 tbl_user了学生的(name)和学号(ID),tbl_score了学生(有的学生以后被了,没有其)的学号(ID

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论