
ThinkPHP V5
ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。
相逢不晚何必匆匆
一分耕耘,一分收获。一艺之成,当尽毕生之力。
展开
-
关于 FastAdmin 对数据表时间字段不能自动维护的解决办法
两个时间字段,会在添加数据和更新数据时自动维护这两个字段,不需要手动维护,这其实是。类型,在使用一键 CRUD 时,生成的增删改查在维护时间字段时,会出现问题。完成这两处的修改即可自动维护添加时间和更新时间字段。自动写入时间戳字段的配置生成后默认是。开发框架时,如果数据表中存在。类型,但是如果字段使用的是。,和数据表中的数据类型一致。这两个字段的数据类型支持。原创 2023-05-11 15:26:47 · 1366 阅读 · 1 评论 -
在 ThinkPHP 中使用 JWT 签发 Token
JWT,可以看成是一种Token签发方案。Token通常叫做认证令牌,用于客户端和服务端在交互时的身份认证。JWT数据量小,传输速度快。使用json数据格式,可跨语言。即签即发,不需要在服务端保存。适合移动端。更多关于 JWT 的信息可访问官网查看 >>>原创 2022-11-07 14:36:33 · 1831 阅读 · 0 评论 -
FastAdmin数据列表根据某个字段的值动态显示与隐藏按钮
一、需求在后台管理中,我们有时会遇到根据数据表中某个字段的值来判断显示某个可操作的按钮。比如一张用户表中,存在一个status字段,在列表显示时,如果该字段的值等于1,显示拉黑按钮,等于2则显示恢复按钮。二、代码实现在FastAdmin快速开发框架中,列表数据由相应的JavaScript文件渲染而成,假如控制器为User.php,则此控制对应的JS文件位置在public/assets/js/backend/user/user.js。在操作一栏添加两个按钮,分别为拉黑和恢复,使用visible函数判原创 2021-07-04 19:54:35 · 6625 阅读 · 23 评论 -
FastAdmin生成CRUD不显示列表的问题
检查数据表中是否有字段名和表名相同原创 2020-06-28 10:25:18 · 1371 阅读 · 0 评论 -
ThinkPHP 分页查询获取分页后的数据
1、控制器查询数据$data = Db::name('table_name')->paginate(5);return $this->fetch('index', ['data' => $data]);2、控制器获取分页数据// 输出当前页$nowPage = $data->currentPage();// 输出总条数$total = $data->total();// 输出当前页条数$listRows = $data->listRows();3、原创 2020-06-10 16:49:02 · 802 阅读 · 0 评论 -
使用 PhpSpreadsheet 将 Excel 表格数据导入到数据库
1、安装 PhpSpreadsheetcomposer require phpoffice/phpspreadsheet2、控制器代码public function importExcel(){ // 接收文件 $file = $_FILES['file']['tmp_name']; // 创建读操作 $reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx'); // 打开文件、载入原创 2020-06-04 17:15:04 · 940 阅读 · 0 评论 -
ThinkPHP 使用 PhpSpreadsheet 导出 Excel 文件
1、安装 PhpSpreadsheetcomposer require phpoffice/phpspreadsheet2、控制器代码public function exportExcel(){ // 查询要导出的数据 $data = Db::name('student')->select(); // 实例化 $spreadsheet = new Spreadsheet(); // 获取活动工作薄 $sheet = $spreadsheet-&原创 2020-06-02 16:30:06 · 1353 阅读 · 2 评论 -
ThinkPHP5之验证码的使用
1、安装 captcha 扩展注意:5.0 版本只能使用 1.* 版本的验证码。composer require topthink/think-captcha=1.*如果不行尝试该命令:composer require topthink/think-captcha=1.* -vvv如果在 vendor/topthink 下出现 think-captcha 文件夹则代表安装成功。2、...原创 2020-05-05 16:27:43 · 795 阅读 · 0 评论 -
【ThinkPHP5】之对模型关联的理解
目录1、业务需求2、三表结构3、三表关系4、主从关系6、模型一对一关联的用法7、代码实现1、业务需求业务系统中现有:学生表、班级表、学校表。现需要查询学生表的同时关联班级表和学校表以查询某个学生属于哪个班级和哪个学校。2、三表结构学生表 student(只列出部分字段):字段名含义id主键room_id关联班级表外键name学生姓名sex学...原创 2020-04-30 12:52:36 · 1478 阅读 · 3 评论 -
ThinkPHP5 分页时保留搜索条件
1、HTML 代码输入框的 value 即要显示的本次分页请求携带的参数<form class="layui-form layui-col-space5"> <div class="layui-inline layui-show-xs-block"> <input type="text" name="name" placeholder="请输入用户名...原创 2020-04-17 14:51:52 · 393 阅读 · 1 评论 -
ThinkPHP5 简单的生成随机邀请码
public function creatInvCode(){ $code = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $arr = []; for($i=0;$i<6;$i++){ $arr[$i] = $code[rand(0,35)]; } $code = implode('',$arr); return $cod...原创 2019-06-14 17:41:48 · 1762 阅读 · 2 评论 -
ThinkPHP5 对接 APP 微信支付
model 或 extend 中:以在 extend 中为例:1、配置参数:namespace wxpay;class WxPay{ private $config = array( 'appid' => "", // 微信开放平台上的应用id 'mch_id' => "", // 微信申请成功之后的商户号 'api_key' => "" // 在微信...原创 2019-11-23 19:36:20 · 1054 阅读 · 1 评论 -
ThinkPHP5 生成二维码
1、下载二维码类库二维码类库下载提取码:j6lp放在 vendor 下2、控制器代码:/** * 生成二维码 * @param $data string 跳转地址 * @param $erfilename string 二维码名称 * @return int */function create_qrcode($data, $filename){ vendor("ph...原创 2019-11-25 13:50:52 · 276 阅读 · 1 评论 -
ThinkPHP5给图片路径拼接站点域名的公共方法
controller:$subject = Db::name('subject')->select();$subject = addWebSiteUrl($subject, ['image', 'expression']);处理前查询结果:{ "id": 1, "module": 179, "group": 180, "image": "/uploads/images/20...原创 2019-12-06 10:21:07 · 2328 阅读 · 5 评论 -
ThinkPHP5 解决跨域
index.php 中添加//允许跨域header('Access-Control-Allow-Origin:*');// 响应类型header('Access-Control-Allow-Methods:*');// 响应头设置header('Access-Control-Allow-Headers:x-requested-with,content-type');...原创 2019-12-06 13:56:07 · 467 阅读 · 5 评论 -
ThinkPHP5 对接 APP 支付宝支付
1、下载支付宝 SDK 放在 extend 目录下,需要修改一些文件的命名空间。可以直接下载我个人修改好的,解压放进去直接用即可。下载地址:下载支付宝 PHP SDK提取码:ht0d2、代码部分引入:use alipay\aop\AopClient;use alipay\aop\request\AlipayTradeAppPayRequest;向支付宝服务器发起订单:$aop ...原创 2019-12-26 16:12:53 · 1440 阅读 · 1 评论 -
ThinkPHP5文件上传
1、文件接收$file = request()->file('file');2、文件保存public static function upload($file){ // 保存路径 $dir = ROOT_PATH . 'public' . DS . 'uploads/images'; if (!file_exists($dir)) { mkd...原创 2020-01-03 13:42:26 · 739 阅读 · 1 评论 -
ThinkPHP5对接阿里云短信服务
1、下载阿里云 PHP SDK点击前往下载下载完成放在 extend 目录下2、修改文件修改api_demo内SmsDemo.php的命名空间namespace aliyun\api_demo;此方法去掉 static 改为非静态方法public function sendSms($mobile, $code){ // 初始化SendSmsRequest实例用于设置发...原创 2020-02-11 20:34:19 · 1327 阅读 · 2 评论 -
ThinkPHP5 上传文件到七牛云对象存储
1、准备工作注册七牛云账号,可以有免费的10G储存空间。到 个人中心-密钥管理 查看 AccessKey 和 SecretKey。2、SDK 下载命令行进入到项目根目录,使用 composer 下载文件。下载成功会在 vendor 目录下多出一个 qiniu 目录。composer require qiniu/php-sdk3、控制器代码<?phpnamespace ap...原创 2020-03-02 19:40:10 · 1456 阅读 · 1 评论 -
ThinkPHP5 + Mpdf 生成 PDF 文档
1、服务器环境Apache2、类库下载composer require mpdf/mpdf3、控制器代码use Mpdf\Mpdf;public function createPdf(){ $mpdf = new Mpdf(); $mpdf->autoScriptToLang = true; $mpdf->autoLangToFont = true; $ht...原创 2020-04-02 15:36:14 · 1795 阅读 · 3 评论 -
ThinkPHP上传文件到阿里云 OSS 对象存储
阿里云对象存储OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,提供99.9999999999%(12个9)的数据持久性,99.995%的数据可用性。多种存储类型供选择,全面优化存储成本。原创 2020-02-08 11:05:51 · 4283 阅读 · 0 评论 -
修改 ThinkPHP5 分页功能
1、目标效果2、HTML 代码<div class="page">{$page}</div>3、PHP 代码$where = [];$admin = AdminModel::where($where)->paginate(3); // 每页 3 条数据$page = $admin->render();return $this->fetch...原创 2020-04-13 11:33:06 · 346 阅读 · 0 评论