ThinkPHP 3.2.3
说明手册
https://www.kancloud.cn/manual/thinkphp/1706
下载地址
https://gitee.com/liu21st/thinkphp32
thinkPHP 3.2.3 是从showdoc开源项目里面看到的,最新版的TP比较复杂,先看看这个老版本的。
https://www.showdoc.com.cn/help?page_id=4087044677189279
前台访问地址:
http://localhost:8033/server/index.php/Home/Index/index
数据库配置:
Application\Common\Conf\config.php
<?php
return array(
'DB_TYPE'=> 'mysql',
'DB_HOST'=> 'localhost',
'DB_NAME'=>'think_list',
'DB_USER'=>'root',
'DB_PWD'=>'123456',
'DB_PORT'=>'3306',
'DB_PREFIX'=>'think_',
);
第一个 Controller
Application\Home\Controller\IndexController.class.php
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller
{
public function index()
{
$List = D("List");
echo json_encode($List->select());
}
}
BaseController.class.php
<?php
namespace Home\Controller;
use Think\Controller;
class BaseController extends Controller
{
/**
* 返回json结果
*/
protected function sendResult($array){
if (isset($array['error_code'])) {
$result['error_code'] = $array['error_code'] ;
$result['error_message'] = $array['error_message'] ;
}
else{
$result['error_code'] = 0 ;
$result['data'] = $array ;
}
if ($this->is_local_debug > 0 ) {
header('Access-Control-Allow-Origin: *');//允许跨域请求
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Connection, User-Agent, Cookie');
header('Access-Control-Allow-Credentials: true');//允许跨域请求
}
echo json_encode($result);
//如果开启API调试模式,则记录请求参数和返回结果
if (C('API_LOG')) {
$info = '';
$info .= "\n\n【★★★★★★★★★★★】";
$info .= "\n请求接口:".MODULE_NAME ."/".CONTROLLER_NAME."/".ACTION_NAME."";
$info .= "\n请求".'$_REQUEST'.":\n";
$info .= json_encode($_REQUEST);
$info .= "\n返回结果:\n";
$info .= json_encode($result)."\n";
$info .= "【★★★★★★★★★★★】\n";
\Think\log::record($info , 'INFO');
}
}
}
ListController.class.php
<?php
namespace Home\Controller;
class ListController extends BaseController
{
public function list()
{
$List = D("List"); // 实例化User对象
$this->sendResult($List->select());
}
public function insert() {
$insert = array(
"text" => '123' ,
"status" => '111'
);
$List = D("List")->add($insert);
$result = array(
"tip" => 'ok'
);
$this->sendResult($result);
}
public function update() {
D("List")->where("id='1'")->save(array('text'=>'text111'));
$this->sendResult(array('tip'=>"ok"));
}
}
php token 的获取
$headers = getallheaders();
dump($headers["Token"]);
ThinkPHP 3.2.3的更多相关文章
- 制作类似ThinkPHP框架中的PATHINFO模式功能
一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...
- 在 SAE 上部署 ThinkPHP 5.0 RC4
缘起 SAE 和其他的平台有些不同,不能在服务器上运行 Composer 来安装各种包,必须把源码都提交上去.一般的做法,可能是直接把源码的所有文件复制到目录中,添加到版本库.不过,这样就失去了与上游 ...
- ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案
好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- thinkphp数据的查询和截取
public function NewsList(){ $this->assign('title','news'); $p = I('page',1); $listRows = 6; $News ...
- [转]thinkphp 模板显示display和assign的用法
thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...
- [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别
1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会 ...
- Kindeditor在ThinkPHP框架下的使用
1.简单调用Kindeditor的图片上传功能: a.Html部署图片预览,记录图片上传成功之后的路径,以及上传图片点击按钮 <tr> <td>活动图片:</td> ...
- 在thinkphp中,写的博文标签多对多关系的标签频率统计算法
常常看到别人的博客里面,或者网站里面有这样随机颜色,但字体大小与标签出现频率有关的标签云,于是自己就想写一个.至于颜色的随机显示,那就很简单了,这里就不列代码. 因为正在学thinkphp,所以数据查 ...
- thinkphp怎么修改配置进入默认首页
thinkphp文件夹下config 里面有个convention.php文件 里面有三个配置 'DEFAULT_MODULE' => 'Home', // 默认模块 'DEFAULT_CONT ...
随机推荐
- 【8】同步vscode配置和插件【导入导出】、再也不用担心换电脑重新安装插件了
相关文章: [1]VScode中文界面方法-------超简单教程 [2]VScode搭建python和tensorflow环境 [3]VSCode 主题设置推荐,自定义配色方案,修改注释高亮颜色 [ ...
- 营销(marketing)、推广(Promotion)和 运营(Operation)的概念分别是什么?
首先要明确的原则: 1.你得承认"讨论任何事情之前不弄清楚概念定义就是耍流氓" 2.你得承认"由于每个人的经验学识和理解力的不同,我们常对概念定义产生分歧" 3 ...
- 优化算法之梯度下降|Matlab实现梯度下降算法
题目要求: 使用Matab实现梯度下降法 对于函数: min f ( x ) = 2 x 1 2 + 4 x 2 2 − 6 x 1 − 2 x 1 x 2 \min f(x)=2 x_{1}^{ ...
- 【STL源码剖析】list::sort真的好用吗?Centos7-Linux环境g++Release下vector数组排序和list排序效率测试【超详细的注释和解释】
说在前面的话 在使用C++的标准模板库的一些容器时,我们难免会遇到给序列排序的问题. 在学习list的时候,我们可能会了解到,algorithm::sort其实不是万能的. 当我们要给list排序的时 ...
- 制作包含最新更新的Windows 10 LTSC 2021 ISO
介绍 在制作桌面云windows 模板的时候,一般需要安装最新的更新.更新安装过程非常耗时,并且安装更新会导致桌面模板的磁盘空间膨胀.制作出的模板会占用很大的磁盘空间.如果不安装更新,模板大小约5G. ...
- 编译Assimp时出现“warning C4819”的解决方案
最近又重新捣鼓起了OpenGL, 使用Assimp库加载3D模型,最新(2023/12/9)的版本是5.3.1. 使用cmake编译本是一件简单的事情: cmake . cmake --build ...
- SPFA -----队列优化的Bellman-Ford
SPFA ------队列优化的Bellman-Ford 由Bellman-Ford算法实现带有负权边的单源最短路,时间复杂度是O(VE),也就是边数乘顶点数.但是根据Bellman-Ford的状态转 ...
- Windows、MacOs上 gif 录像软件 LICEcap
LICEcap 官网:https://www.cockos.com/licecap/ 适用于 windows macos 我自己保持的一版,下载地址:https://files-cdn.cnblogs ...
- DNS正向解析
实验介绍:正向解析 通常把域名到IP称为正向解析 把ip到域名称为反向解析 一:前期准备 准备一台客户端测试正向解析是否正常 修改ip 子网掩码 DNS服务器 使用VMnet8 IP要和DNS服务器端 ...
- Linux中如何查找特定的数据是否在目录或文件中
一个很简单的方式就是使用grep命令,grep命令是一个强大有效可靠并且很流行的命令行工具,用于查找对应的数据包含文件或者目录中在Linux环境中. 为了便于学习,我们准备了以下文件,具体想要查找以实 ...