1.简述MVC流程,单入口模式的好处:

  单入口模式优点:安全,灵活。可集中进行安全处理,访问统计等统一控制。

2.入口文件中为什么要判断PHP版本,TP要求PHP的版本是什么?

  因为ThinkPHP3.2引入了命名空间的概念,PHP5.3以上(包含PHP5.3)的版本才支持

  PHP版本不能小于5.3.0

3.控制器的定义规则是什么(含控制器名、控制器类名和控制器类文件名),并举出一个例子。

  控制器名: 首字母大写。例:Index

  控制器类名:控制器名+Controller。例:IndexController

  控制器类文件名:控制器类名+.class.php。例:IndexController.class.php

3.1 自定义模型类的命名规则,含模型名、模型类名和模型类文件名;

  模型名:根据表名,去掉表前缀后首字母大写,如果有下划线,去掉下划线后首字母大写。(大驼峰法) 例:User

  模型类名:模型名+Model。例:UserModel

  模型类文件名:模型类名+.class.php   例:UserModel.class.php

4.生成新模块的两种方法是什么?

  1.define('BIND_MODULE','Admin');

  2.复制Home模块

5.模型类的五种实例化方式是什么,每种举出一个例子;

  1.实例化空模型类:$model=new Model();

  2.实例化基础模型类:$model=new  Model(['模型名'],['数据表前缀'],['数据库连接信息']);

  3.M方法实例化基础模型类:$model=M(['模型名'],['数据表前缀'],['数据库连接信息']);

  4.实例化自定义基础模型类:$model=new 模型类操作名(['模型名'],['数据表前缀'],['数据库连接信息']);

  5.D方法实例化自定义基础模型类:$model=D(['模型名'],['数据表前缀'],['数据库连接信息']);

6.I方法设置默认值的等价的完整的原生方法是什么?

  例:$id=isset($_GET['id'])?$_GET['id']:'';

7.隐式查询与显示查询的区别,哪种方式更高效,请举例说明两种查询方式的书写规则;

  区别:显示查询可以提高查询速度,效率高

  显示查询更高效

  显式查询:field   例如:$this->field('name','pwd')->select();

  隐式查询:例如:$this->select();

8.指定字段更新和插入的连贯操作是什么,举例描述如何进行指定字段插入和修改;

  更新:setField     例:$User-> where('id=5')->setField('name','ThinkPHP');

  插入:add()   $User->data($data)->add();

9.模版主题如何调用,使用模版主题后,视图层目录需要如何调整?

  模板主题调用:$this->theme('blue')->display();

  视图层目录:--view

          --blue  //模板主题

            --Index  //控制器名

              --color.html       //模板主题页面

10.请写出ajax修改列表页面中一条记录中的手机号内容,请写出html的代码以及服务端的代码,html端使用$.ajax方式;

  控制器操作:

public function ajaxEdit(){
$user=D('User');
if(IS_POST){
$tel=trim(I('post.tel',''));
$id=trim(I('post.id',''));
$data['id']=$id;
$where=array();
$where['id']=$id;
$ret=$user->where($where)->setField('tel',$tel);
if($ret===false){
$data['msg']="修改失败";
$data['status']=1;
}elseif($ret==0){
$data['msg']="未修改任何数据";
$data['status']=2;
}else{
$data['msg']="修改成功";
$data['status']=3;
}
$this->ajaxReturn($data);
}
} 视图层:HTML页
css样式:
<style type="text/css">
.inpHide{
border: 0px;
}
.inpShow{
border: 1px;
border: solid;
}
</style> //input框,当双击后会弹出input框,修改完毕后input框消失,同时不可被选中
<td align="center">
  <input class="inpHide" id="testInput-<{$v['id']}>" onblur="reInput('testInput-<{$v['id']}>')" readonly ondblclick="changeInput('testInput-<{$v['id']}>')" value="<{$v['tel']}>">
</td> //ajax操作
</script>
function changeInput(id){
$('#'+id).prop('class','inpShow');
$('#'+id).attr('readonly',null);
} function reInput(id){
var tel=$('#'+id).val();
var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if (!myreg.test(tel)) {
alert("请填写正确的手机号");
}else{ $.ajax({
type:"post",
url:"<{:U('Home/List/ajaxEdit','','')}>",
data:"tel="+tel+"&"+"id="+id,
dataType:"json",
success:function(data){
if(data.status==1){
alert(data.msg);
$('#'+id).prop('class','inpHide');
$('#'+id).attr('readonly',true);
}else if(data.status==2){
alert(data.msg);
$('#'+id).prop('class','inpHide');
$('#'+id).attr('readonly',true);
}else{
alert(data.msg);
$('#'+id).prop('class','inpHide');
$('#'+id).attr('readonly',true);
}
} });
}
}
</script>

ThinkPHP3.2基础知识(二)的更多相关文章

  1. java 基础知识二 基本类型与运算符

    java  基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...

  2. 菜鸟脱壳之脱壳的基础知识(二) ——DUMP的原理

    菜鸟脱壳之脱壳的基础知识(二)——DUMP的原理当外壳的执行完毕后,会跳到原来的程序的入口点,即Entry Point,也可以称作OEP!当一般加密强度不是很大的壳,会在壳的末尾有一个大的跨段,跳向O ...

  3. Dapper基础知识二

    在下刚毕业工作,之前实习有用到Dapper?这几天新项目想用上Dapper,在下比较菜鸟,这块只是个人对Dapper的一种总结. 2,如何使用Dapper?     首先Dapper是支持多种数据库的 ...

  4. python基础知识(二)

    python基础知识(二) 字符串格式化 ​ 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 ​ print(' %s is boy'%('tom')) ----> ...

  5. Java基础知识二次学习--第三章 面向对象

    第三章 面向对象   时间:2017年4月24日17:51:37~2017年4月25日13:52:34 章节:03章_01节 03章_02节 视频长度:30:11 + 21:44 内容:面向对象设计思 ...

  6. Java基础知识二次学习-- 第一章 java基础

    基础知识有时候感觉时间长似乎有点生疏,正好这几天有时间有机会,就决定重新做一轮二次学习,挑重避轻 回过头来重新整理基础知识,能收获到之前不少遗漏的,所以这一次就称作查漏补缺吧!废话不多说,开始! 第一 ...

  7. 快速掌握JavaScript面试基础知识(二)

    译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...

  8. Java基础知识二次学习--第六章 常用类

    第六章 常用类   时间:2017年4月26日16:14:49~2017年4月26日16:56:02 章节:06章_01节~06章_06节 视频长度:20:57+1:15+8:44+1:26+11:2 ...

  9. java接口自动化基础知识(二)

    二.HttpClient+testNG实现对接口的测试及校验 在上面第一篇中已经实现了基础配置和测试用例数据准备,本篇文章将以登录举例进行测试执行. 这是之前login接口的代码 @Test(grou ...

随机推荐

  1. 微信JS-SDK使用步骤(以微信扫一扫为例)

    概述: 微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包. 通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照.选图.语音.位置等手机系统的能力,同时可以直接使用 ...

  2. vue.js之过滤器,自定义指令,自定义键盘信息以及监听数据变化

    一.监听数据变化 1.监听数据变化有两种,深度和浅度,形式如下: vm.$watch(name,fnCb); //浅度 vm.$watch(name,fnCb,{deep:true}); //深度监视 ...

  3. 手机端rem如何适配_rem详解及使用方法2

    作为一个前端开发人员,我们的任务是将UI设计师的图稿运用计算机语言呈现在用户面前.而现在的设备大小尺寸不一,近年来智能手机的普及更是让网页的用户大部分来源与手机,所以让不同大小的移动端屏幕都能较好的还 ...

  4. centOS7 mini配置linux服务器(四) 配置jdk

    这里简单写一下centos7Mini  安装jdk1.8的全过程. 一.下载jdk,linux版本. 地址:http://www.oracle.com/technetwork/java/javase/ ...

  5. fastq,sam文件一些小结(持续补充。。。)

    ST-E00211::H5L3NCCXY:::: chr14 141M = - ACTTCACCTCCTGGAGTCCTGGACTTCCCCACATCTCCCCTGCCCCTCCCACGTTTCCAT ...

  6. 我知道你不知道的负Margin

    现如今,负margin技术的应用可谓越来越广,任一个大型站点惊鸿一瞥之下都会有其身影所在.个人认为负margin技术是学习css路上必不可缺少的课题之一,许多高级应用及疑难杂症修复都可以使用负marg ...

  7. 理解JavaScript原型

    Javascript原型总会给人产生一些困惑,无论是经验丰富的专家,还是作者自己也时常表现出对这个概念某些有限的理解,我认为这样的困惑在我们一开始接触原型时就已经产生了,它们常常和new.constr ...

  8. C# 判断网站是否能访问或者断链

    参考网站:http://www.cnblogs.com/junny/archive/2012/10/30/2745978.html public bool CheckUrlVisit(string u ...

  9. 02-JAVA基础及面向对象(补充)

    引用数据类型 java中的数据类型可以分为 基本数据类型 和 引用数据类型 两大类 int float char boolean等都是基本数据类型 类类型都是引用数据类型 引用数据类型类似C语言中的指 ...

  10. 可视化编程开发板TurnipBit支持LED亮度可调功能

    微软的makecode编辑器更新至版本v0.12.64.新增LED的可调亮度功能.而作为中文版可视化编程的口袋计算机TurnipBit完全兼容micro:bit,同样支持LED的亮度可调功能. 该项功 ...