日期:2014-05-17  浏览次数:20380 次

PHP面试题目<一>

最近的事情比较杂乱无章,没有安心下来工作,闲下来无事总结一些PHP的面试题目吧。

1.表单中get与post的提交方式的区别
get用户端将数据加到url后面,如submit.php?id=123&name=yanggong,从而get存在一定的安全问题。
get传输的数据量小,主要是因为url长度的限制,而post可以传输大量的数据。
get限制表单中数据集的范围asc2码,而post可以支持整个iso10646字符集。

2.session与cookie的区别
cookie是保存在客户端的信息,是一种远程浏览器储存数据并以此来跟踪和识别用户的机制。PHP的http协议的头信息里发送cookie,因此setcookie()函数必须在其他信息出去前调用,和header()函数的限制类似。
session是保存在服务器端的信息,从这个角度,session比cookie更安全。当会话创建时,服务器返回客户端一个加密的session_id以识别用户身份,浏览器关闭,session销毁,从而session存的值就没有了。

3.echo print??print_r printf 的区别
echo是php语句,没有返回值,输出一个或多个
print()和print_r()是函数,有返回值。print打印简单类型变量,而print_r()可以打印数组对像复杂变量。
printf() 函数输出格式化的字符串。

4.mysql_fetch_array()与mysql_fetch_row()区别
mysql_fetch_array()返回根据从结果集取得的行生成数组,如果没有更多行,返回false.??可以以字段名和数字做索引。
mysql_fetch_row()返回结果集中取得一行作为枚举数组,返回一个数字的数据,偏移量为0,只能数字做索引

5.PHP面向对象的基本知识????_set() _get() __construct()??public private protected
_set()??用于为属性设置值
_get()??获取属性的值
__construct??在一个类中只能声明一个构造方法,每次创建对象的时候回去调用一次构造方法,不能主动地调用这个方法,所以通常用它执行一些有用的初始化任务。
public表示全局,类内部外部子类都可以访问
private表示私有,只有本类内部可以调用
protected表示受保护的,只有本类或子类或父类可以访问。

6.谈谈事务?
事务就是一系列的操作,这些操作完成一个任务,只要其中有一个操作没有成功,事务就操作失败,发生回滚事件,即撤消前面的操作,这样可以保证数据的一致性。而且可以把操作暂时放在缓存里,等所有操作都成功有提交数据库,这样保证费时的操作都是有效操作。