PHP面试技巧之口试题

1、PHP的意思,它能干些什么? 

PHP是一个基于服务端来创建动态网站的脚本语言,您可以用PHP和HTML生成网站主页,英文的全称(Professional  Home Pages)
1、WEB开发、实现订单、网络通信、在线支付、一切互联网可以实现的工作。
2、脚本的开发,Shell 脚本、 windows的计划任务等
3、软件的开发,PHP-GTK等第三方的软件,使用php语法配合其他的语言开发软件
2、谈谈对mvc的认识?
由模型(Model),视图(View),控制器(Controller)完成的应用程序
由模型发出要实现的功能到控制器,控制器接收组织功能传递给视图;参考《PHP100视频教程》43、44、75、76、77讲
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
参考《PHP100视频教程》94、95讲
10、对于大流量的网站,您采用什么样的方法来解决访问量问题?
确认服务器硬件是否足够支持当前的流量,数据库读写分离,优化数据表,
程序功能规则,禁止外部的盗链,控制大文件的下载,使用不同主机分流主要流量
1、PHP程序上可以使用生成静态文件实现服务数据库压力
2、使用PHP缓存技术、或第三方的mamcached 等缓存技术实现服务器压力参考《PHP100视频教程》samrty缓存技术、mamcached缓存用法
11、include和require的区别是什么?为避免多次包含同一文件可用什么代替它们? 
包含文件不存在或者语法错误的时候require是致命的,include不是 require需要放在头部预先载入,而include放在文件的任何位置随时载入
还有一对扩展函数:require_once() include_once()  
12、mysql_fetch_row() 和mysql_fetch_array之间有什么区别?  
mysql_fetch_row   是从结果集取出1行数组,作为枚举
mysql_fetch_array 是从结果集取出一行数组作为关联数组,或数字数组,两者兼得