以下全部是转载别人的总结,感觉回答不错:
面试之前多看看公司的资料,可以看出面试的公司主要做什么,电商,数据库,PHP函数,SQL的优化,接口,session和cookie等经常会问到,都是必问之题,这其中有一部分题目整理自网络,个人感觉回答的也不错。
1.请自我介绍一下?
答:根据自己情况回答
2.你在公司负责那些项目?
答:由于我们公司是一个外包公司,很多项目都是交叉进行的,论坛,微信,商城我都做过,我主要负责的模块有.....;
3.你为什么来上海?
答:根据自己情况回答,最好真实一些.
4.现在在上海什么框架比较流行?
答:根据自己的区域回答;
5.你做过那些模块?
答:登陆注册,商品管理,购物车模块,订单管理等;
6.你们公司是使用什么框架?
答:我们公司采用的是TP框架,运用的MySQL+APACHE+ PHP进行开发,因 为TP框架是一个免费开源的,轻量级的,PHP的开发框架,而且是我们中国人自己开发的,也是国内用的比较多的,并且各种资料也比较齐全;
7.什么是mvc?相互间有什么关系?
答:MVC是一种开发模式,主要分为三部分:M(模型),也就是模型,负责数据的操作; V(视图),也就是视图,负责前后台的显示; C(控制器),也就是控制器,负责业务逻辑;
客户端请求项目的控制器,如果执行过程中需要用到数据,控制器就会到模型中获取数据,再将获取到的数据通过视图显示出来;
8.OOP是什么?
答:oop是面向对象编程,面向对象编程是一种计算机编程架构,OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。
OOP具有三大特点:
1、封装性:也称为信息隐藏,就是将一个类的使用和实现分开,只保留部分接口和方法与外部联系,或者说只公开了一些供开发人员使用的方法。于是开发人员只 需要关注这个类如何使用,而不用去关心其具体的实现过程,这样就能实现MVC分工合作,也能有效避免程序间相互依赖,实现代码模块间松藕合。
2、继承性:就是子类自动继承其父级类中的属性和方法,并可以添加新的属性和方法或者对部分属性和方法进行重写。继承增加了代码的可重用性。PHP只支持单继承,也就是说一个子类只能有一个父类。
3、多态性:子类继承了来自父级类中的属性和方法,并对其中部分方法进行重写。于是多个子类中虽然都具有同一个方法,但是这些子类实例化的对象调用这些相同的方法后却可以获得完全不同的结果,这种技术就是多态性。多态性增强了软件的灵活性。
1、易维护
采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本的。
2、质量高
在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。
3、效率高
在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。
4、易扩展
由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。
9 .smarty是什么,有什么作用?
回答一:smarty是用php写出来的模板引擎,也是目前业界最著名的php模板引擎之一,它分离了逻辑代码和外在的显示,提供了一种易于管理和使用的方法,用来将混杂的php逻辑代码与html代码进行分离
回答二:smarty是php中最著名的引擎框架之一,我们公司使用的是TP框架,已经封装好了smarty模板,所以没有单独使用过
回答三: smarty是个模板引擎,最显著的地方就是有可以把模板缓存起来。一般模板来说,都是做一个静态页面,然后在里面把一些动态的部分用一切分隔符切开,然后在PHP里打开这个模板文件,把分隔符里面的值替换掉,然后输出来,你可以看下PHPLib里面的template部分。
而smarty设定了缓存参数以后,第一次运行时候会把模板打开,在php替换里面值的时候把读取的html和php部分重新生成一个临时的php文件