- 博客(60)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 think\queue 消息队列
TP 中使用 think-queue 可以实现普通队列和延迟队列。消息的发布,获取,执行,删除,重发,失败处理,延迟执行,超时控制等队列的多队列, 内存限制 ,启动,停止,守护等消息队列可降级为同步执行。
2022-08-20 10:39:35 2555
原创 PHP switch延伸
前几天,闯子哥发来消息闯:“昊!你认为switch里面的break语句有啥用?”我:“结束啊!”我:“我之前不写 他就会继续执行 ”我:“case 不匹配 他也走”我:“我没搞明白”
2022-01-21 17:05:28 613
原创 thinkphp5 远程关联 (hasManyThrough)
有一个幼儿园的小朋友想对各个班级的点名开发一个软件 于是找到了我,就产生了一系列的操作疑问表结构首先看一下表结构表A :classs 表 班级表CREATE TABLE `classs` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `class_name` varchar(255) DEFAULT NULL COMMENT '班级名称', `info` varchar(255) DEFAULT NULL COMMENT '详情'.
2021-12-14 17:43:14 2292
原创 就叫2021年度总结吧
不知不觉已经24岁了,马上2021就要过去简单的做一下总结吧2021总结一直在写项目,看了几本书,尝试锻炼结果失败了,学会了打麻将,打台球,联系朋友培养感情,考驾照、热爱做菜热爱生活。相比之前更有了生活、更懂了的生活、更要记录生活2021我走过去了清华大学但是很遗憾不是周末去的 没有看到清华门(还遇到了重大气象灾害,下的雨都是黑色的 可怕!)长了智齿去看牙医 牙医说:不影响其他的牙 结果白挨一刀 智齿还在 而且还经常塞饭赏月夜晚的大明湖畔一个忘记名字忘.
2021-12-07 17:49:42 610 1
原创 PHP switch使用中遇到的问题
朋友们好啊,我是一个努力搬砖写代码的老码农刚才有个朋友问我码老师在嘛,我说怎么回事,给我发了一张截图我一看!嗷!原来是刚才,有一个年轻人二十多岁,体重 九十多公斤,他说,哎……我在公司写代码,颈椎练坏了码老师你能不能教教我高效代码法?哎……帮助治疗一下我的颈椎病我说可以,我说你在公司写代码,不好使。他不服气哎……我说小朋友,你两个手来折我一个手指头,他折不动他说你这也没用我说这个有用,这是写代码写的,传统代码是快速的,四行顶千行二百行的高效API,都不如我这一个SQL语句……哈!他非要.
2021-12-04 18:19:15 666 2
原创 【PHP每日一练】PHP中 empty与isset 的区别
在PHP中isset()和empty()之间很容易混淆,它们都是用于测试变量的值,都返回一个布尔值。
2021-11-24 16:10:36 350
原创 $().click()和$().on(‘click‘,function(){})的区别
在处理js追加元素点击事件时 遇到点问题当你用$().click() 触发的时候 你追击的元素会无法触发 也就是 不在页面内的元素on方法包含很多事件,点击,双击等等事件。和$().click()的用法一样,最大的区别即优点是如果动态创建的元素在该选择器选中范围内是能触发回调函数。e.stopPropagation();这个也是个知识点 阻止事件冒泡到父级元素比如说 在多层嵌套li 的时候 点击事件触发 $(this) 输出是他的父级加上e.stopPropagation(); 这一有效的解决
2021-09-09 17:11:39 2151
原创 PHP生成支付宝签名(用户授权登录)
在对接支付宝授权登录的时候 遇到很多 整理一下支付宝文档是真坑 文档多乱七八糟在APP授权登录的时候 要生成一个签名 与 支付宝规定好的字符串 拼接之后返回给前端但是我在对接的时候 然后去找文档 文档地址然后我又根据这个文档 文档地址要组成一个这个形式的字符串然后我按照他说的去生成 然后又找到了 这个文档 文档链接根据里面参数构造 来来回回整不好 签名一直有问题然后联系了客服 给到了这个文档 文档链接上代码吧 require VENDOR_PATH . 'alipay-sd
2021-09-07 17:28:49 1615
原创 支付宝直接拉起个人对个人转账 (延伸------网页直接拉起APP操作)
主要功能我在一个项目中遇到了一个功能需求 是要个人对个人的转账支付宝的解决方案是文档链接最终的效果是 个人到个人的付款 但是中间会经过商户 一经过商户 就会收取 6‰ 的手续费 (客户不答应)然后我就找到了这个核心代码就是 拉起打开支付宝,构造好参数 会直接打开 支付宝的转账界面 代码放到最后前提是要获取支付宝的用户信息(也就是用户授权登录)这一步操作是没问题的 根据支付宝授权登录文档 一步一步的操作就行大体和微信差不多 先获取code 获取到code之后 用code 获取to
2021-09-03 17:06:46 2328
原创 CSS命名规范
CSS书写顺序1.位置属性(position, top, right, z-index,display, float等) 2.大小(width, height, padding, margin) 3.文字系列(font, line-height, letter-spacing,color- text-align等) 4.背景(background, border等) 5.其他(animation, transition等)CSS命名规范(规则)常用的CSS命名规则 头:header
2021-08-31 18:58:34 215
原创 PHP生成压缩包 (并下载)【解决压缩包下载,提示压缩包损坏】
PHP生成压缩包 $zip = new \ZipArchive; $file = time().'.zip'; $protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ?"https://": "http://"; $siteurl = $protocol . $_SERVER['HTT
2021-08-26 17:12:22 726 1
原创 Thinkphp5 导出Excel直接下载 设置各个参数属性
//利用excel导出插件PHPExcel // 引入phpexcel核心类文件 require_once ROOT_PATH . '/vendor/phpexcel/Classes/PHPExcel.php'; // 实例化excel类 $objPHPExcel = new \PHPExcel(); // 操作第一个工作表 $objPHPExcel->setActiveSheetIndex(0); ..
2021-08-25 15:49:20 301
原创 PHP 对比两个float类型是否相等
有两个变量是float类型 需要对比是否相等俩个变量的参数是一样的 打印如下但是在对比中如下图所示 一直走elsefloat 的值是一样的然后我想*100 对比 如下图发现还是走else然后把两个参数 重新赋值给两个变量 还是不行打印是否是多打印几位看是否是精度损失 printf("%.20f\n", $a); printf("%.20f\n", $b);得到两个float 犹豫精度损失 不一致转换字符串对比一下是可以的(string)$a == (s
2021-06-16 16:02:51 543 2
原创 MySQL触发器 (通过Navicat 编辑)
文章目录1、触发器的概念2、触发器的作用3、MySQL 语法4、简单的示例5、效果1、触发器的概念触发器(trigger)是MySQL提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作(insert,delete, update)时就会激活它执行2、触发器的作用可在写入数据表前,强制检验或转换数据。触发器发生错误时,异动的结果会被撤销。部分数据库管理系统可以针对数据定义语言(DD
2021-04-26 13:38:27 4654
原创 fastadmin 后台指定字段 隐藏删除按钮
在使用fastadmin生成表单时有些数据 不能删除 如 pid为0 的看了官网的 文档和论坛 没找到合适的解决办法 写在这里记录一下思路:重新js中的 删除方法 添加自己 想要的条件字段主要修改 js文件中//这是默认的 就是全部按钮都存在的 {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate
2021-04-22 17:38:41 1319 3
原创 PHP对接百度智能云接口 (植物识别)
在项目中需要对接一个 百度智能云的 接口 植物识别写在这里记录一下1账号账号的参数 这里就不多说了 之前有一篇文章中有过简单的介绍 可以去之前发表的文章 去看一下 账号需要设置的东西 或者流程— 传送门 —唯一不同的就是 在控制台 选择这一个然后就是对接 需要用到的参数$apikey$secretkey在控制台中 都能获取到2接入和语音技术不一样 接入这个 需要获取一个 token 官方文档中 也有声明① 获取Access Token文档连接代码如下public func
2021-04-21 17:12:33 582
原创 Thinkphp5 模型操作 记录
提示:记录thinkphp 操作模型 参考看云tp5手册 传送门一、定义在 模块目录 中的 model 中namespace app\index\model;use think\Model;class User extends Model{ // 设置当前模型对应的完整数据表名称 protected $table = 'think_user'; //默认主键为自动识别,如果需要指定,可以设置属性: protected $pk = 'id'; // 自动写入时间戳字段
2021-04-20 16:42:05 443
原创 PHP随笔
dirname(FILE);返回的是脚本所在在的路径。dump(dirname(__FILE__));//返回的是脚本所在在的路径。//输出: /www/wwwroot/www/application/index/controllerdump(dirname(dirname(__FILE__)));//重复一次可以把目录往上提升一个层次: //输出:/www/wwwroot/www/application/indexfile_get_contents(‘php://input’).
2021-04-13 14:57:38 193 1
原创 PHP对接极光推送
对接了几次极光推送,每次对接都是重新查找参数及之类的操作。比较繁琐,所幸有时间整理一下PHP对接极光的文档。以便下次对接使用一、注册账号及配置参数登陆极光官网注册账号登陆成功之后 进入控制台创建自己的应用 在应用设置中 配置如下图参数在程序开发过程中必须要使用的是 AppKey 和 Master Secret 先把这两个参数设置好二、程序对接第一步需要前端获取设备的唯一ID registrationID需要前端获取 这一步交给前端处理就可以 这里放一个文档链接 不过多介绍了 —传
2021-03-30 15:40:29 842
原创 PHP 对接建行龙支付
在开发中 遇到一个对接建行支付的 我从网上搜了一下 大多数 都在吐槽文档写的垃圾 我从这里记录一下 我对接支付过程中 遇到的问题 以及解决办法从注册账号开始一:注册账号/登陆首页要找到 建行特约商户首页 第一次需要准备的东西有点多 需要下载 建行的 E路护航 不然无法登陆流程如下 传送门 以及常见问题链接 传送门第一步处理完成之后 从 特约商户入口 就可以直接登录了点登陆之后 要有个证书 点确定就可以 然后到 商户服务平台登录 输入账号密码就可以正常登陆了...
2021-03-22 15:33:48 3439 10
原创 thinkphp实现查询只返回一个字段
// 返回数组Db::table('think_user')->where('status',1)->column('name');// 指定索引Db::table('think_user')->where('status',1)->column('name','id');Db::table('think_user')->where('status',1)->column('id,name'); // 同tp3的getField查询结果为一个一维数组[‘张三
2021-02-25 11:16:46 1206
原创 fastadmin selectpage 联动效果
$("#c-vehicle_series").data("params", function (obj) { return {brand_id: $("#c-brand").val()};});$brand_id = $this->request->request("brand_id");
2021-02-19 11:19:23 413
原创 fastadmin TAB过滤选项卡
模型public function getTopStatusList(){ return ['2'=>'政策法规','3'=>'信息公开','4'=>'办事指南'];}映射到前端<div class="panel-heading"> <ul class="nav nav-tabs" data-field="top_id"> <li class="{:$Think.get.top_id === null
2021-02-06 16:34:19 1715
原创 PHP静态与非静态方法之间的调用
非静态方法之间的调用用 $this 调用 public function test() { dump($this->test1()); return 'This is a test';}public function test1(){ return 'This is a test1';}访问test输出string(15) "This is a test1"This is a test非静态方法调用静态方法关键词 selfpublic fun
2021-02-01 16:09:15 109 1
原创 Thinkphp5 接入百度语音合成(文字转换音频)
/** * Notes:百度接口文字转换音频 * By: Tommy * DateTime: 2021/1/19 15:43 * @param string $text * @return string */ public function to_voice($text='尊敬的用户您好!您有一条新的消息请注意查收'){ //一如 require_once '../extend/aip-speech-php-sdk-.
2021-01-19 16:00:13 777 6
原创 PHP 生成邀请码(随机字符串) 数据量大之后 生成长度+1
在写一个项目 用户量比较大 要生成邀请码 考虑到用户输入方便 决定用6位 长度开始然后查询数据库 如果查询10次 还是有重复的 说明生成的随机邀请码 已经重复率比较高了 这个时候 生成的邀请码长度+1这是一个测试版本 初步跑了一下 没有问题 等数据量大之后 要测试问题function get_invitation(){ $str = set_invitation(); $return_str = testing_single($str); return $return_str;}fun
2021-01-06 16:04:54 297
原创 引入百度编辑器 UEditor (遇到的坑)
今天遇到一个客户觉得UMeditor (功能精简,加载速度更快) 编辑器的功能少我决定给他 换UEditor 完整版 但是在换的过程中 遇到一点坑 写在这里 记录或者分享一下首先 我去 官网 http://ueditor.baidu.com/ 发现已经无法访问了然后找了 http://fex.baidu.com/ueditor/ 然后找到了 git 网址 http://github.com/fex-team/ueditor然后我就下载 引入<!-- 配置文件 --><
2020-11-30 16:04:01 3625 1
原创 Thinkphp 用FIND_IN_SET 实现 查询数据库中值为 1,2,3 条件为 有1时查询结果
在数据库中 我们经常使用 1,2,3,4 来存储数据但是我们查询的时候 只拿到 1 还有其他条件 这样查询就比较困难 但是用 FIND_IN_SET 就比较便捷用法如下数据库结构CREATE TABLE group_order (id int(11) unsigned NOT NULL AUTO_INCREMENT,gorup_num int(10) DEFAULT ‘2’ COMMENT ‘团购人数’,user_id varchar(255) DEFAULT NULL COMMENT
2020-11-11 18:02:11 1140
原创 实现微信 委托代扣/包月服务
首先需要开通委托代扣服务 这个需要与腾讯口中的BD (类似于商务拓展服务商) 委托代扣服务 属于内测 只能通过Bd开通 (这一步不需要来考虑)看开通后 在微信商户平台->产品中心->支付扩展工具如图:微信商户平台->交易中心->高级业务需要在这里 新增模板 模板需要腾讯审核 大约 1-3个工作日申请完模板 基本准备工作就做好了 下面就要开始对接了 (对接过程中 坑 特别多 需要自己慢慢排雷 看完这篇 应该会避免很多雷)////////////////
2020-11-05 18:07:53 5237 11
原创 PHP 数组将某个键 相等的值重新组成数组
有一个二维数组 array 需要把某个键 的值 相等的 重新构成一个数组foreach ($array as $key => $value) { $new_array[$value["键"]][] = $value; }
2020-08-29 17:41:36 549
原创 fastadmin后台 实现多选 数据自定义
添加 <div class="form-group"> <label class="control-label col-xs-12 col-sm-2">{:__('Category_ids')}:</label> <div class="col-xs-12 col-sm-8"> <input id="c-category_ids" data-source="teacher/selectpage"
2020-08-24 17:57:54 4155
原创 某某商城 前端小程序 授权问题 bug (完美解决)
Index/index.js修改onLoad:修改修改为:setTimeout(function() {a.setData({areas: i.getCache("cacheset").areas});}, 3e3);if ((typeof (t.id) != "undefined" && t.id > 0) || (typeof (t.mid) != "undefined" && t.mid>0))i.url(t); bind:修改
2020-08-21 18:15:06 293
原创 ThinkPHP5 查询中 直接把时间戳转换成时间
当我们在写关于时间字段的时候 数据库往往是用时间戳,但是要用到这个数据的时候 往往要输出时间格式 可以用field(‘FROM_UNIXTIME(opening_time,"%m-%d %H:%i:%s") as opening_time’) 直接将时间转换为时间戳 节省一步 循环遍历的过程db('coach_class') ->where($already_where) ->order('id desc') ->field('FROM_UNIXTIME(opening_ti
2020-08-17 11:23:36 2436
原创 thinkPHP5 微信小程序 实现图片上传保存
<view class='item-ot'> <view class="item"> <!-- 添加按钮 --> <view class="addIcon" bindtap="chooseImage" wx:if="{{imgBoolean}}"> <view class=''> <text style="font-size:66rpx">+</text> <view style="
2020-08-14 18:05:08 1185
原创 PHP 实现查询未来一周的时间
for($i=0;$i<7;$i++){ $time[$i]['date'] = date('Y-m-d',strtotime(date('Y-m-d').'+'.$i.'day')); $time[$i]['week_time'] = strtotime(date('Y-m-d').'+'.$i.'day'); $time[$i]['week'] = $this->getTimeWeek($time[$i]['week_time']);} //方法用于返回该日期 为周.
2020-08-13 16:22:09 295
原创 thinkphp5 {:url()}在 jq中 带参数跳转 ( 对html页面jq部分的url传参操作)
//id 和 goods_id 为俩个参数var id = $(this).next().val();var goods_id = 1;var url = "{:url('index/index',['id'=>'canshu','goods_id'=>'cancan'])}";//这里 需要把url中的参数替换一下 url = url.replace('canshu',id);url = url.replace('cancan',goods_id);window.loca
2020-06-17 15:25:45 968
转载 thinkPHP5 生成海报(图片叠加定位)
放在common.php文件中function getbgqrcode($imageDefault,$textDefault,$background,$filename="",$config=array()){ //如果要看报什么错,可以先注释调这个header if(empty($filename)) header("content-type: image/png"); //背景方法 $backgroundInfo = getimagesize($background);
2020-05-29 15:46:34 1354
UEditor 完整版
2020-11-30
qrcode.zip
2020-05-21
PHP二维数组如何实现 二维数组下的一维数组 连线 返回所有集
2020-10-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人