PHP面试题汇总及答案
PHP程序员经典面试问题
1、PHP的意思,它能干些什么?
PHP是一个基于服务端来创建动态网站的脚本语言,您可以用PHP和HTML生成网站主页,英文的全称(Professional Home Pages)
(1)WEB开发、实现订单、网络通信、在线支付、一切互联网可以实现的工作。
(2)脚本的开发,Shell 脚本、 windows的计划任务等。
(3)软件的开发,PHP-GTK等第三方的软件,使用php语法配合其他的语言开发软件
2、谈谈对mvc的认识?
由模型(Model),视图(View),控制器(Controller)完成的应用程序
3、GD库是做什么用的?
GD库提供了一系列用来处理图片的功能,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表。现在常用的GD2功能更强大,可以实现对gif、png图片的处理。
4、数据类型(int char varchar datetime text)的意思; 请问varchar和char有什么别?
int是数字类型,char固定长度字符串,varchar实际长度字符串,datetime日期时间型,text文本字符串,char的场地固定为创建表设置的长度,varchar为可变长度的字符
5、表单中 get与post提交方法的区别?
get是发送请求HTTP协议通过url参数传递进行接收
而post是实体数据,可以通过表单提交大量信息.
6、session与cookie的区别?
session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的一般
用于后台和安全性比较高的地方。cookie:是存储在客户端,对于Cookie来说是存储在用户浏览器下面的,一般用户
登陆,负载压力比较大的地方。可以减轻服务器的负载。
7、echo(),print(),print_r()的区别?
echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值print()只能打印出简单类型变量的值(如int,string)
print_r() 可以打印出复杂类型变量的值(如数组,对象)
Echo 输出一个或者多个字符串
8、什么是模板技术、能够使HTML和PHP分离开使用的模板?
模板技术就是使PHP和HTML、CSS、JS 分离,实现更加合理和代码的部署Smarty ,XTemplate, Template Lite, Easy Template…
9、使用哪些工具进行版本控制?
Cvs 、 Svn 、Vss
10、对于大流量的网站,您采用什么样的方法来解决访问量问题?
确认服务器硬件是否足够支持当前的流量,数据库读写分离,优化数据表,
程序功能规则,禁止外部的盗链,控制大文件的下载,使用不同主机分流主要流量
(1)PHP程序上可以使用生成静态文件实现服务数据库压力
(2)使用PHP缓存技术、或第三方的mamcached 等缓存技术实现服务器压力参考《PHP100视频教程》samrty缓存技术、mamcached缓存用法
11、include和require的区别是什么?为避免多次包含同一文件可用什么代替它们?
包含文件不存在或者语法错误的时候require是致命的,include不是 require需要放在头部预先载入,而include放在文件的任何位置随时载入
还有一对扩展函数:require_once() include_once()