1.ThinkPHP中M和D的使用方法并说出区别。
相同点 都是实例化模型
不同点:M方法实例化模型,无需数据表定义模型类,而D方法实例化模型需要模型类,如果模型类不存在,会自动调用M方法。
通俗点讲,D就是实例化一个基于Model文件的model.M则是通过直接实例化Model对象,即使对应的Model文件不存在
2.使用ThinkPHP写一个连贯查询,包含条件、排序、分页,字段并说明find和select的区别
$m->where(‘a=1’)->order(‘id asc’)->field(true)->page(page,listrow)->select(),
Find: 读取数据表中的一行数据,
$user = M(‘User’);//实例化User对象
$data = $user->where(‘status=1 and name=thinkphp’)->find();
即使满足条件的数据不止一个,find方法也只会返回第一条记录。返回的是关联数组。
Select:获取数据表中的多行记录。返回一个二维数组
3.ThinkPHP插入数据成功后返回的是什么结果并且输出当前执行的sql语句?
$model->getLastSql();
4.请说出你常用的PHP框架,简要说明其特性。如果你对其非常了解,PHP框架的底层代码你看懂了多少?框架设计思想你明白多少?
Yaf框架,使用PHP扩展的形式写的一个PHP框架,也是以C语言为底层编写,性能上要比PHP代码写的框架快一个数量级。
优点:执行效率高、轻量级框架、可扩展性强
缺点:高版本兼容性差、底层代码可读性差、需要安装扩展、功能单一、开发需要编写大量插件
Yii框架
Yii框架是一款优秀的通用WEB后端框架,结构简单优雅,实用功能丰富、扩展性强,性能高。
缺点:学习成本高
Laravel:laravel是一款年轻型的框架,使用人数全球第一,文档齐全,大量第三方优秀包供引用,适合大型网站协同开发。
TP还是上手挺快的,而且是中文文档
5.什么是MVC?使用时遇到到了什么问题,怎么解决的?
MVC是模型、视图、控制器的缩写,是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码。