8、在PHP中error_reporting这个函数有什么作用?
设置PHP的报错级别并返回当前级别。
9、说说你对缓存技术的了解?
缓存技术是将动态内容缓存到文件中,在一定时间内访问动态页面直接调用缓存文件,而不必重新访问数据库。
10、现在编程中经常采取MVC三层结构,请问MVC分别指哪三层,有什么优点?
MVC三层分别指:业务模型、视图、控制器,由控制器层调用模型处理数据,然后将数据映射到视图层进行显示,优点是:①可以实现代码的重用性,避免产生代码冗余;②M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式
11、AJAX的优势是什么?
ajax是异步传输技术,可以通过javascript实现,也可以通过JQuery框架实现,实现局部刷新,减轻了服务器的压力,也提高了用户体验。
12、在程序的开发中,如何提高程序的运行效率?
A、优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询;
B、数据表中创建索引;
C、对程序中经常用到的数据生成缓存。
13、对于大流量的网站,您采用什么样的方法来解决访问量问题?
A、有效使用缓存,增加缓存命中率
B、使用负载均衡
C、对静态文件使用cdn进行存储和加速
D、想法减少数据库的使用
E、查看出现统计的瓶颈在哪里
F、反向代理
14、语句include和require的区别是什么?为避免多次包含同一文件,可用什么语句代替它们?
区别:
在失败的时候:
include产生一个warning,而require产生直接产生错误中断
require在运行前载入
include在运行时载入
代替:
require_once
include_once
15、foo()和@foo()之间有什么区别?
@代表所有warning忽略
16、简述php的垃圾收集机制。
答案:php中的变量存储在变量容器zval中,zval中除了存储变量类型和值外,还有is_ref和refcount字段。refcount表示指向变量的元素个数,is_ref表示变量是否有别名。如果refcount为0时,就回收该变量容器。如果一个zval的refcount减1之后大于0,它就会进入垃圾缓冲区。当缓冲区达到最大值后,回收算法会循环遍历zval,判断其是否为垃圾,并进行释放处理。
17、如何实现PHP的安全最大化?怎样避免SQL注入漏洞和XSS跨站脚本攻击漏洞?
答:基本原则:不对外界展示服务器或程序设计细节(屏蔽错误),不相信任何用户提交的数据(过滤用户提交)。
18、echo、print_r、print、var_dump区别
echo:语句结构;
print:是函数,有返回值
print_r:能打印数组,对象
var_dump:能打印对象数组,并且带数据类型
19、写出smarty模板的特点
速度快,编译型,缓存技术,插件机制,强大的表现逻辑
20、PHP如何实现页面跳转
方法一:php函数跳转,缺点,header头之前不能有输出,跳转后的程序继续执行,可用exit中断执行后面的程序。
header(“Location:网址”);//直接跳转
header(“refresh:3;url=http://www.jsdaima.com”);//三秒后跳转
方法二:利用meta
echo"";
21、如何把一个GB2312格式的字符串装换成UTF-8格式?
iconv(‘GB2312’,‘UTF-8’,‘js代码(http://www.jsdaima.com)是IT资源下载与IT技能学习平台。’);
?>
22、如果需要原样输