ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
>[info] 干货题库(一) **1、SESSION 与 COOKIE的区别是什么,请从协议,产生的原因与作用说明?** A、http无状态协议,不能区分用户是否是从同一个网站上来的,同一个用户请求不同的页面不能看做是同一个用户。 B、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 的基本区别?索引结构如何实现?** A、MyISAM类型不支持事务,表锁,易产生碎片,要经常优化,读写速度较快,适合用于频繁查询的应用; B、InnoDB类型支持事务,行锁,有崩溃恢复能力,读写速度比MyISAM慢,适合于插入和更新操作比较多的应用,空间占用大,不支持全文索引等。 创建索引: ``` alert table tablename add index 索引名 (`字段名`) ``` ***** **5、isset() 和 empty() 区别** sset判断变量是否存在,可以传入多个变量,若其中一个变量不存在则返回假; empty判断变量是否为空为假,只可传一个变量,如果为空为假则返回真。 ***** **6、在PHP中error\_reporting这个函数有什么作用?** 设置PHP的报错级别并返回当前级别。 ***** **7、语句include和require的区别是什么?为避免多次包含同一文件,可用什么语句代替它们?** 在失败的时候: include产生一个warning,而require产生直接产生错误中断 require在运行前载入 include在运行时载入 代替: ~~~ require_once include_once ~~~ ***** **8、echo、print_r、print、var_dump区别** ~~~ echo:语句结构; print:是函数,有返回值 print_r:能打印数组,对象 var_dump:能打印对象数组,并且带数据类型 ~~~ ***** **9、PHP如何实现页面跳转** php函数跳转,缺点,header头之前不能有输出,跳转后的程序继续执行,可用exit中断执行后面的程序。 ``` header("Location:网址");//直接跳转 header("refresh:3;url=http://www.jsdaima.com");//三秒后跳转 ``` ***** **10、如何把一个GB2312格式的字符串装换成UTF-8格式?** ``` iconv('GB2312','UTF-8','世界上最好额语言 '); ```