随笔分类 -  thinkphp

thinkphp
摘要:1. 先把php加入到环境变量 2.直接下载 composer.phar,地址:https://dl.laravel-china.org/composer.phar 把下载的 composer.phar 放到 PHP 安装目录 命令下载: php -r "copy('https://getcompo 阅读全文
posted @ 2025-01-09 11:17 与f 阅读(42) 评论(0) 推荐(0) 编辑
摘要:php程序对微信昵称的表情处理,若转义存数据库,怎么读出并导出成excel文件. <?php include(dirname(__FILE__) .'/phpexcel-1.7.7/Classes/PHPExcel.php'); include(dirname(__FILE__) .'/phpexc 阅读全文
posted @ 2024-08-10 17:40 与f 阅读(57) 评论(0) 推荐(0) 编辑
摘要:php比较好的技术栈 laravel + laravel-admin(快速构建后台) : https://laravel-admin.org/ Dcat Admin 中文文档 (基于laravel-admin实现): https://learnku.com/docs/dcat-admin/2.x T 阅读全文
posted @ 2023-05-05 11:07 与f 阅读(437) 评论(0) 推荐(0) 编辑
摘要:简单介绍:消息队列中间件是大型系统中的重要组件,已经逐渐成为企业系统内部通信的核心手段。它具有松耦合、异步消息、流量削峰、可靠投递、广播、流量控制、最终一致性等一系列功能,已经成为异步RPC的主要手段之一。 大白话:消息队列有两个角色和一个容器,角色分别为生产者(负责发布任务)和消费者(负责执行任务 阅读全文
posted @ 2022-06-22 10:13 与f 阅读(2491) 评论(0) 推荐(0) 编辑
摘要:添加队列 /** * 发送一个推送 * @param mixed client_id 设备号(字符串/数组) 1 * @param int group 分组(如:1=用户端2=骑手端) 1 * @param msg_type 透传消息类型 * @param order_id 订单ID * @retu 阅读全文
posted @ 2022-06-21 16:34 与f 阅读(1032) 评论(0) 推荐(0) 编辑
摘要:使用事务之前,先确保数据库的存储引擎支持事务操作。 MyISAM:不支持事务,主要用于读数据提高性能 InnoDB:支持事务、行级锁和并发 Berkeley DB:支持事务 ThinkPHP5 使用事务有 3 个常用方法: model>startTrans();//model-> 阅读全文
posted @ 2022-05-18 16:56 与f 阅读(343) 评论(0) 推荐(0) 编辑
摘要:现在的框架中都有一个容器, 而容器解决依赖的问题是通过反射来达到的, 所以记录一下PHP反射的只是。首先先说明一下项目文件结构: / ROOT_PATH ├─src │ ├─Controllers │ │ └─IndexController.php | ├─Application.php (核心,获 阅读全文
posted @ 2022-03-24 10:30 与f 阅读(402) 评论(0) 推荐(0) 编辑
摘要:注意:本例子都以衣服表和衣服sku表为例。 (衣服表:衣服的基本信息;衣服sku表:衣服不同规格的排列组合。易理解是说法,有款夹克衣服,那它的基本信息存衣服表,它不同尺寸和颜色排列组合得到的衣服信息存到衣服sku表) 1.场景一:通过衣服名称搜索衣服基本信息 这个显然是单模型搜索如 $where[] 阅读全文
posted @ 2022-03-09 10:13 与f 阅读(1058) 评论(0) 推荐(0) 编辑
摘要:php数组排列组合(递归形式),可用于服装等商品规格的排列组合 一,排列组合返回数组 /* * 二维数组的递归排列组合 * 格式: spcearr=[[...],[...],[...],...]spec = [ ['x','xl','xxl'], ['红色','黑色','灰色 阅读全文
posted @ 2022-02-11 17:04 与f 阅读(612) 评论(0) 推荐(0) 编辑
摘要:PHP 实现了一种代码复用的方法,称为 trait。 Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统 阅读全文
posted @ 2022-02-09 09:07 与f 阅读(63) 评论(0) 推荐(0) 编辑
摘要:Thinkphp6模型事件类似于Vue的钩子函数,方便我们在增、删、查、改这个时间段进行操作 模型事件 首先,从手册上,我们可以知道模型支持以下事件: 事件描述事件方法名 after_read 查询后 onAfterRead before_insert 新增前 onBeforeInsert afte 阅读全文
posted @ 2022-02-08 15:48 与f 阅读(188) 评论(0) 推荐(0) 编辑
摘要:Thinkphp常常需要关联操作,数据库中需要用到join连接查询,根据对方的条件进行关联条件查询(同时获得两个表的数据) 这里有两个表:article(文章表)、comment(评论表): 模型: //评论表 class Comment extends Model { public functio 阅读全文
posted @ 2022-02-08 15:38 与f 阅读(1118) 评论(0) 推荐(0) 编辑
摘要:发现很多开发者在使用ThinkPHP5.*的时候不明白Db和模型的正确使用姿势,尤其是在5.1版本里面,如果你没有使用下面的正确姿势,有很大可能性会踩坑。 Db的正确姿势 下面是官方推荐的Db类用法(也就是每次都是静态方法调用) // 查询单个数据 Db::name('user')->where(' 阅读全文
posted @ 2022-02-08 15:07 与f 阅读(568) 评论(0) 推荐(0) 编辑
摘要:大致和跨域安全相关 概览 问题说明:原因分析:解决方案: 问题说明: 浏览器发起请求时无响应,Network显示: no-referrer-when-downgrade 显示如下图: 原因分析: no-referrer-when-downgrade的意思是:降级时不推荐。 从一个网站链接到另外一个网 阅读全文
posted @ 2021-08-27 16:49 与f 阅读(7141) 评论(0) 推荐(0) 编辑
摘要:异常处理接管 本着严谨的原则,框架会对任何错误(包括警告错误)抛出异常。系统产生的异常和错误都是程序的隐患,要尽早排除和解决,而不是掩盖。对于应用自己抛出的异常则做出相应的捕获处理。 1.框架支持异常处理由开发者自定义类进行接管,需要在app目录下面的provider.php文件中绑定异常处理类,例 阅读全文
posted @ 2021-08-25 11:01 与f 阅读(1154) 评论(0) 推荐(0) 编辑
摘要:一、一般我们写的买票:查数量,如果有数量就卖出去,库存减一 (controller的sellTicket方法) //测试买票软件库存问题 public function sellTicket() { test=Db::name(test)>find(1);if(test['nums' 阅读全文
posted @ 2021-08-19 16:55 与f 阅读(73) 评论(0) 推荐(0) 编辑
摘要:上一篇文章转载了其他博主关于tp6事件的例子,下来说说自己对事件的理解 按照thinkphp官方文档的解释,事件其实不用写event类,只需要写个监听类实现 handle() 方法,通过监听标示(event.php文件配置或动态添加监听)触发即可。 下面操作下这样的流程: 1.添加监听类 可以命令: 阅读全文
posted @ 2021-08-19 10:47 与f 阅读(1835) 评论(0) 推荐(0) 编辑
摘要:thinkphp6事件订阅,监听多个事件 创建一个事件类 创建一个监听类 修改配置文件确定触发事件 创建一个事件类 php think make:event User <?php namespace app\event; class User { public function __construc 阅读全文
posted @ 2021-08-17 17:51 与f 阅读(1378) 评论(0) 推荐(0) 编辑
摘要:1.安装think-queue composer require topthink/think-queue 2.配置消息队列,将config/queue.php将’default’ => ‘sync’改为’default’ => ‘redis’,使用Redis驱动 如选择database,需创建表 阅读全文
posted @ 2021-08-15 22:48 与f 阅读(662) 评论(0) 推荐(0) 编辑
摘要:dataStr=filegetcontents("C:\Users\Administrator\Desktop13.txt");//utf8if(pregmatch(/\xEF\xBB\xBF/,dataStr)) {//\x表示16进制 $dataStr = su 阅读全文
posted @ 2021-05-26 11:38 与f 阅读(332) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示