VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 网站开发 > PHP >
  • PHP面试(A-02)

一、选择题

1.下面哪个表达式不能将两个字符串$s1和$s2串联成一个单独的字符串?( A )
A.$s1+$s2 B.“{$s1}{$s2}” C.$s1.$s2
D. implode(‘’,array($s1,$s2)) E.以上所有的方法都能实现

二、问答题

1.写出下列代码的输出结果:
function myfunc($argument){
echo $argument+ 10;
}
$variable = 10;
echo “myfunc($variable)=”.myfunc($variable);

先调用函数输出,后输出字符串
输出为: 20myfunc(10)=

2.请用尽可能少的语句实现对输出Email地址进行验证的功能

‘/[0-9a-zA-Z_]+@[0-9a-zA-Z_]\.com|\.net|\.cn/ism’

3.简述cookie和session的区别各自的工作机制,存储位置等,简述cookie的优缺点。

Session是在服务器端运作,根据用户浏览器开始到结束而开始到结束,依赖于cookie,若关闭cookie,session有可能异常,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 

Cookie是在客户端运作,可以指定时间限制跟踪用户信息,当用户关闭cookie设置,cookie也将失效,存储在用户WIN的Temp目录中的

Cookie优点:存储于客户端,减缓对服务器端的压力
	   缺点:可以手动修改,安全性不高

4.根据你的经验谈谈写php程序需要注意哪些问题

注意分号和命名的大小写
注意系统函数的参数位置的传参
注意错误等级设置和路径问题

5.Php是否有安全问题,如果有,请列举说明。

1.过滤用户输入的值 比如从post和get传参得来的值
例:`$`_POST[‘user’];不过滤,会造成一连串的麻烦

2.禁用register_globals 如果不禁止,就无法确定该变量是否是预定义全局变量里的值
	例:regiseter_globals=on
		 `$`var 会代替掉 `$`_POST[‘var’]

3.防止sql注入
使用 mysql_real_escape_string() 作为用户输入的包装器,就可以避免用户输入中的任何恶意 SQL 注入
例: `$`sql = "select count(*) as ctr from users where username='".mysql_real_ 
_string(`$`username)."' and password='". mysql_real_escape_string(`$`pw)."' 
limit 1"; 	

6.是否仔细阅读过php手册?请列举基本你阅读过的技术方面的书,并简要说明读后感。

Php 5手册
细说PHP2 很适合新人入门学习,里面的代码精简独到

三、Linux选择题:

1.coron后台常驻程序(daemon)用于:D

A.负责文件在网络中的共享
B.管理打印子系统Manages theprinting subsystem
C.跟踪管理系统信息和错误
D.管理系统日常任务的调度(scheduing)

2.怎么了解您在当前目录下还有多大空间?C

A.Use df
B.Use du /
C.Use du.
D.Use df.

3. 有一个备份程序mybackup,需要在周一至周五下午一点和晚上八点各运行次,下面哪一条crontab的项可以完成这项工作?C

A0 13,20 * * 1,5 mybackup
B0 13,20 * * 1,2,,3,4,5, mybackup
C.*13,20 * *1,2,3,4,5, mybackup
D0 13,20 1,5 * *mybackup

4. 下面哪条命令可以把f1.txt复制为f2.txt?A

A.cp f1.txt|f2.txt
B.cat f1.txt|f2.txt
C.cat f1.txt|f2.txt
B.copy f1.txt|f2.txt

5. 使用命令可以查看Linux的启动信息?B

A.mesg –d
B.dmesg
C.cat /etc/mesg
D.cat /var/mesg

6. 在vi中退出不保存的命令?D

A:qt
B:r
C:wq
D:q!

四、其他相关技术

1.如何判断SQL语句的运行效率?如何优化一个查询SQL?

使用explain查看sql语句
	最主要的查看type和Extra的值
	
1.避免全表扫描
2. 避免在where子句中使用!=或<>操作符, 还有null值的判断全表扫描
3.  避免在where子句中使用or in not in 
4.  避免在where子句中对字段使用函数操作 
5.   不要写一些没有意义的查询
 6.  索引尽量不要过多

2.试写出mysql数据库优化的一些方法

查询语句优化
	建立索引
	使用外键
	减少模糊匹配和自匹配
	数据表类型根据需求不同而设定不同
	优化事务处理
	字段最好都设置not null ,比如字段类型设置成enum

3.apache默认使用进程管理还是线程管理?如何判断并设置最大连接数?
进程管理

通过查看连接数和当前连接数判断
 
netstat -ant | grep `$`ip:80 | wc -l 
netstat -ant | grep `$`ip:80 | grep EST | wc -l 


修改httpd.conf文件 

<IfModule prefork.c> 
StartServers      8 
MinSpareServers    5 
MaxSpareServers  20  
MaxClients      150 
MaxRequestsPerChild  1000 
</IfModule> 

4.简述smarty的工作原理?

Smarty工作原理:当tpl模版文件第一次被hbcms调用后,将被自动编译,并生成php文件,储存在compile目录里;当再次调用tpl文件时,smarty系统会判断tpl文件是否被修改过,如果没被修改过则直接调用,反之 重新编译 调用

5.ajax技术利用了什么协议?简述ajax的工作机制。
HTTP协议

通过 XMLHttpRequest对象 发送数据到服务器 经过服务器的处理后 再接收服务器返回来的数据

6.利用ajax开发时,需要考虑浏览器的兼容性么?如果需要,常需要考虑哪些?ajax开发常会遇到哪些问题,试举例说明?

需要

如 对XMLHttpRequestde对象的解析
对象的创建问题。
js脚本缓存问题	
调试代码排错困难

7.利用ajax传输数据时,一般默认使用的是什么编码方式?如果出现乱码如何处理?
Utf8

设置文件的编码为utf8
在文件的头部增加设置字符集编码为utf8ajax小类库写入 xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" );

四、逻辑思维

  1. 一个人卖苹果,6元/斤的进货价,10元/斤卖出。某一天他卖了1斤苹果,收到了50元假钞,但没有发现,给客户找了40元钱零钱。请问,这人这次卖苹果亏了多少钱?

40+6=46元

  1. 一个小猴子边上有100根香蕉,它要走过50米才能到家,每次他最多搬50根香蕉,每走1米就要吃掉一根,请问它最多能把多少根香蕉搬到家里。

猜想:0根

  1. 分金条问题
    你让某些人为你工作了七天,你要用一根金条作为报酬。这根金条要被分成七块。你必须在每天的活干完后交给他们一块。如果你只能将这根金条切割两次,你怎样给这些工人分?

    联想:二进制:1,2,4 其中若干个的和可构成1,7中任何一个数
    1/7,2/7,4/7 第一天给1/7 第二天拿2/7换1/7 如此反复

4. 有十箱苹果,里面各放苹果10个,其中9箱装的苹果是50克/只,另一箱装的苹果是60克/只,现给你一地秤,要求只称一次就能准确找到装60克/只的那箱苹果,请问如何做?

先给十项苹果编上号 1.2.3 ...... 10
然后1号箱子拿出一个苹果 2号箱子拿出两个苹果 3号箱子拿出三个苹果 以此类推
把拿出的苹果混在一起称重 如果十箱苹果每箱苹果都是50克一只的话
称出的重量应该为2750克 用称出的重量-2750 然后再除以十 等于几 就是第几箱的苹果是60克/只
  1. 村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。
    每个人可以观察其他的49条狗,以判断他们是否生病(如果有病一定能看出来),只是
    自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自
    己家的是病狗就要枪毙自己的狗(发现后必须在一天内枪毙),而且每个人只有权力枪毙自
    己的狗,没有权力打死其他人的狗。
    第一天大家全看完了,但枪没有响,第二天仍没有枪响。到了第三天传来一阵枪声,问
    村里头共有几条病狗,你如何让推算得出的?
3条病狗 
A、假设有1条病狗,病狗的主人会看到其他狗都没有病,那么就知道自己的狗有病,所以第一天晚上就会有枪响。因为没有枪响,说明病狗数大于1。 

  B、假设有2条病狗,病狗的主人会看到有1条病狗,因为第一天没有听到枪响,是病狗数大于1,所以病狗的主人会知道自己的狗是病狗,因而第二天会有枪响。既然第二天也每有枪响,说明病狗数大于2。 

由此推理,如果第三天枪响,则有3条病狗。
  1. 不均匀分布的香,每根香烧完的时间是一小时,你能用什么方法来确定一段15分钟的时间?

香a点燃一头,香b点燃两头。等香b烧完时,时间过去了30分钟。再把香a剩下的另一头也点燃。从这时起到a烧完的时间就是15分钟

五、性格测试

1.简单说一下,你是一个什么性格的人?

表象温和 内里狂热

2.你认为你自身最大的优点和缺点是什么?

最大优点:自信
		最大缺点:自信过头

3.是否愿意在比较大的工作压力下工作?有创业公司的工作经验么?简单说一下你对创业公司的看法。

		愿意尝试下
		没有
创业公司的基础:资金 人脉 最主要的是有一个精良的团队 市场的洞察力
		如果没有一个良好的基础奠基,做什么都很困难

4.你具体是使用什么方法来提供自身的技术(或业务)水平的?

5.说说你对本公司的了解。简单说说你理想中下面找的工作是一个什么样的工作?简单说一下离开上一个工作的原因是什么?

有相互学习的氛围
没有提升自己能力或技术的环境
 

来源:https://www.cnblogs.com/wjw9/p/15511800.html



相关教程