1、 SESSION 与 COOKIE的区别是什么,请从协议,产生的原因与作用说明?
1)http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。
2)SESSION存储在服务器端,COOKIE保存在客户端。Session比较安全,cookie用某些手段可以修改,不安全。Session依赖于cookie进行传递。
禁用cookie后,session不能正常使用。Session的缺点:保存在服务器端,每次读取都从服务器进行读取,对服务器有资源消耗。Session保存在服务器端的文件或数据库中,默认保存在文件中,文件路径由php配置文件的session.save_path指定。Session文件是公有的。
2、HTTP 状态中302、403、 500代码含义?
一二三四五原则: 一. 消息系列 二成功系列 三. 重定向系列四. 请求错误系列 五. 服务器端错误系列
302:临时转移成功,请求的内容已转移到新位置403:禁止访问 500:服务器内部错误 401代表未授权。
3、请写出数据类型(int char varchar datetime text)的意思;请问 varchar 和 char有什么区别?
Int 整数char 定长字符 Varchar 变长字符 Datetime 日期时间型Text 文本型 Varchar与char的区别 char是固定长度的字符类型,分配多少空间,就占用多长空间。Varchar是可变长度的字符类型,内容有多大就占用多大的空间,能有效节省空间。由于varchar类型是可变的,所以在数据长度改变的时,服务器要进行额外的操作,所以效率比char类型低。
4、MyISAM和 InnoDB 的基本区别?索引结构如何实现?
MyISAM类型不支持事务,表锁,易产生碎片,要经常优化,读写速度较快,而InnoDB类型支持事务,行锁,有崩溃恢复能力。读写速度比MyISAM慢。
创建索引:alerttable tablename add index (`字段名`)
5、不使用cookie向客户端发送一个cookie.
理解:session_start()开启时,生成一个常量 SID,当COOKIE开启时,这个常量为空,当COOKIE关闭时,这个常量中存储了PHPSESSID的值。通过在URL后加一个SID参数来传递SESSIONID的值,从而使客户端页面可以使用SESSION里面的值。当客户端开启COOKIE和服务器端开启SESSION时。浏览器次请求,服务器会向浏览器端发送一个COOKIE里面存储SESSIONID.当浏览器第二次请求时,会把已存在
6、isset() 和 empty() 区别
Isset判断变量是否存在,可以传入多个变量,若其中一个变量不存在则返回假,empty判断变量是否为空为假,只可传一个变量,如果为空为假则返回真。
7、php中echo和print有什么区别?
这两个看起来很相似,因为它们都是将一些值打印在屏幕上。但是echo和print的本质区别在于:echo用来输出字符串,显示多个值的时候可以用逗号隔开。只支持基本类型,print不仅可以打印字符串值,而且可以打印函数的返回值。
8、get和post方法有什么区别?
我们再网页上填写的表单信息都可以通过这两个方法将数据传递到服务器上,当我们使用get方法是,所有的信息都会出现在url地址中,并且使用get方法多只能传递1024个字符,所以如果在传输量小或者安全性不那么重要的情况下可以使用get方法。说到post方法,多可以传输2mb字节的数据,而且可以根据需要调节。
9、如何用php和mysql上传视频?
我们可以在数据库中存放视频的地址,而不需要将真正的视频数据存在数据库中。可以将视频数据存放在服务器的指定文件夹下,上传的默认大小是2mb,但是我们也可以在php.ini文件中修改max_file size选项来改变。
10、php中的错误类型有哪些?
php中遇到的错误类型大致有3类。
提示:这都是一些非常正常的信息,而非重大的错误,有些甚至不会展示给用户。比如访问不存在的变量。
警告:这是有点严重的错误,将会把警告信息展示给用户,但不会影响代码的输出,比如包含一些不存在的文件。
错误:这是真正的严重错误,比如访问不存在的php类。