首页
📷在线壁纸
🎬娱乐天地
🔖友情链接
更多
📝留言板
Search
1
【javascript】JS-向当前url追加参数
2,345 阅读
2
【PHP】生成随机昵称
2,219 阅读
3
【PHP】判断一个字符串是否属于序列化后的数据
2,024 阅读
4
【css】html+css给文章页,做阅读全文
1,975 阅读
5
【PHP】 设计模式(23种)
1,910 阅读
📂默认分类
💓typecho
🏳️🌈代码改变世界
🍇 mysql
🍈 Winform
🍓 golang
🍉 设计模式
🥝 PHP
🍎 python
🍊 nginx
🍋 网络安全
🍍 javascript
🫑 database
🍭文艺范
🍏mac
AI
LLM
image
audio
yolo
3D
code
登录
Search
标签搜索
php
typecho
代码注释
redis
mysql
go
golang
nginx
thinkphp
docker
gin
linux
curl
html
mamp
算法
短网址
构造函数
webhook
代码片段
依然范儿特西
累计撰写
145
篇文章
累计收到
1
条评论
首页
栏目
📂默认分类
💓typecho
🏳️🌈代码改变世界
🍇 mysql
🍈 Winform
🍓 golang
🍉 设计模式
🥝 PHP
🍎 python
🍊 nginx
🍋 网络安全
🍍 javascript
🫑 database
🍭文艺范
🍏mac
AI
LLM
image
audio
yolo
3D
code
页面
📷在线壁纸
🎬娱乐天地
🔖友情链接
📝留言板
搜索到
145
篇与
的结果
2022-12-01
thinkphp3.2 AuthBehavior.class中,使用session无效原因分析
背景在开发中。 创建了一个 AuthBehavior.class 在做全局的权限验证, 里边会读取session, admin_id, 结果是读取失败原因在AuthBehavior.class这个类中,使用session的时候,session_start()还没有执行,所以无法读取;过程分析:关于 behavior 文件加载,程序执行过程大概是这样index.php -> 应用开始(app_begin)标签位侦听并执行绑定行为 -> session启动 -> 控制器开始(action_begin)标签位侦听并执行绑定行为解决办法第一种: 修改tags.php文件'app_begin' => array('Behavior\AuthBehavior'), 修改为 'action_begin' => array('Behavior\AuthBehavior'), 第二种: 偏方:在index.php就启用session_start(); 但是这样有一个问题,就是配置文件里面的那些改变session配置的参数可能及不起作用了(例如session前缀 SESSION_PREFIX) 提示:session函数位置 ThinkPHP\Common\functions.php参考文章:https://www.kancloud.cn/manual/thinkphp/1704
2022年12月01日
33 阅读
0 评论
1 点赞
2022-11-30
解决thinkphp5 session失效问题
1 index.php//定义session 保存目录 define('SESSION_SAVE_PATH',__DIR__.'./runtime/session/');2 config.php增加session的保存目录 path // +---------------------------------------------------------------------- // | 会话设置 // +---------------------------------------------------------------------- 'session' => [ 'id' => '', // SESSION_ID的提交变量,解决flash上传跨域 'var_session_id' => '', // SESSION 前缀 'prefix' => 'laofan_', // 是否自动开启 SESSION 'auto_start' => true, //有效期 'expire' => 86400, // 驱动方式 'type' => '', 'path'=>SESSION_SAVE_PATH, ],
2022年11月30日
39 阅读
0 评论
0 点赞
2022-11-28
golang字符串切割
//定义一个字符串和相应map str := "PHP 是 世 界 上 最 好 的 编 程 语 言" map1 := make(map[string]int) //进行切割,此处成为[]string,并进行排序,方便后面直接计数 str2 := strings.Split(str, " ") sort.Strings(str2) for i := 0; i < len(str2); i++ { count := 1 for j := i + 1; j < len(str2); j++ { if str2[j] == str2[i] { count++ i = j } } map1[str2[i]] = count } fmt.Println(map1)
2022年11月28日
34 阅读
0 评论
0 点赞
2022-11-17
新冠三年十月下,豫州府 记实
新冠三年十月下豫州府 记实豫州府城外,南六十余里,盘踞一工场,台籍商贾所建,使人三十万众,多以弱冠少年,妙龄少女求生于台商,场内大疫突生,众染疾者无药者有之,无食更有之,真相不明,流言四起,故万人皆仓惶流窜,不顾险境,希冀求生。众万人弃物逃之,监工衙役力阻。然距家短则几十里,远则三五百里之遥,以步为尺,或行田间,或行官道,风餐夜宿,弃性命于不顾。沿途百姓观之,均侧身落泪,于道侧放裹腹之物,助众返。时日,城内禁足有月,庶民怨气冲天,轻生者有一二,商贩破产者更众,城外众逃。民怨达至庙堂,派巡按御史、太史令至豫州府查明缘由。州府黄土铺街,所经之处,迁人乔装,吩咐万勿错答,以对应付。庶民群起而怒骂之,州府闭其眼,堵其耳,闭其口,无睹言其他。是以功过,待后人评!
2022年11月17日
76 阅读
0 评论
2 点赞
2022-11-10
V50js代码
疯狂星期四, v50let arr = [ [1, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], [2, 8, 12, 18, 22], [3, 7, 12, 13, 14, 15, 16, 18, 22], [4, 6, 16, 18, 22], [5, 5, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22], ]; function demo(arr) { let str = ""; let style=[]; for (let i = 0; i < arr.length; i++) { for (j = 0; j < 30; j++) { if (arr[i].indexOf(j) > -1) { str += "%c█"; style.push(j< 12 ? "color:red" : "color:green") } else { str += " "; } } str += "\n"; } return [str,...style]; } console.log(...demo(arr));
2022年11月10日
56 阅读
0 评论
0 点赞
2022-10-26
【mysql】如何在一个大表里新加表结构? pt-online-schema-change工具带你去实现
mysql面试题: 如何在一个大表里新加表结构?直接加, 会很慢, 显然不可取,正确做法是:A表: 大数据量的表(原始表) B表: 含有新增表结构的表(新表) 直接创建B表,然后把A表的 存量和增量 都存入B表, 最后删除A表,把B表的表名字改为A表现在有个工具,可以很好的实现这个功能 :pt-online-schema-changehttps://docs.percona.com/percona-toolkit/pt-online-schema-change.html工作原理是创建一个新表,在新表上执行表结构修改,然后从原表中copy原始数据到表结构修改后的表,当数据copy完成以后就会将原表移走,用新表代替原表,默认动作是将原表drop掉。在copy数据的过程中,任何在原表的更新操作都会更新到新表,因为这个工具在会在原表上创建触发器,触发器会将在原表上更新的内容更新到新表。注意: 如果表中已经定义了触发器这个工具就不能工作了!!
2022年10月26日
45 阅读
0 评论
1 点赞
2022-10-17
Excel实践之时间戳格式与日期格式的互转
13位时间戳转日期=TEXT((A2/1000+83600)/86400+70365+19,"yyyy/mm/dd hh:mm:ss.000")10位时间戳转日期=TEXT((A2+83600)/86400+70365+19,"yyyy/mm/dd hh:mm:ss")日期转 10位时间戳= INT((A2-70365-19)86400-8*3600)其中A2 就是目标所在的单元格
2022年10月17日
92 阅读
0 评论
0 点赞
2022-08-30
php通过各种函数判断0和空
函数对0的判断$cast_id = 0; var_dump(strlen($cast_id)); //1 var_dump(emptyempty($cast_id)); // true var_dump(isset($cast_id)); //true var_dump(is_null($cast_id));//false 对空的判断$cast_id = ""; var_dump(strlen($cast_id)); //0 var_dump(emptyempty($cast_id)); // true var_dump(isset($cast_id)); //true var_dump(is_null($cast_id));//false 补充:下面给大家介绍下php 语法里0不等于null为空的解决办法今天遇到这样一个问题是这样的: php 语句里,我想判断一个值大于等于0. 我是使用 ($value !=null && $value >=0), 返回的结果为空,这点真的好奇怪。实验总结:php 语句如下:$index=0; echo "A: ".$index."<br>"; //0 echo "B: ".($index !=null && $index >=0)."<br>";// echo "C: ".(isset($index) && $index >=0)."<br>";//1 echo "D: ".(0 !=null)."<br>";// 结果:A: 0 B: C: 1 D: 要判断一个数值[该数组可能为空等]大于等于0, 可用另外一个方法: is_numeric($index) === true$index=array_search($url, $contentOtherStr, true); //值大于等于0, 即存在 if(is_numeric($index) === true) { echo "$url existed. "."<br>"; }else{ echo "$url Add. "."<br>"; array_push($contentOtherStr, $url); } 这个很奇怪,终于解决了,Mark 一下。总结:php的语句稍有些怪异,从其它编程语言转来的同学们一定多加小心谨慎,注意惯性思维及语法差异点啊,避免陷入坑中。其它资料:原因是在PHP中变量是以C语言的结构体来存储的,空字符串和NULL,false都是以值为0存储的,其中这个结构体有个zend_uchar type;这样的成员变量,他是用来保存变量的类型的,而空字符串的类型是string,NULL的类型是NULL,false是boolean。这一点可以用 echo gettype('') ;和 echo gettype(NULL) ;来打印看看!而===运算符是不单比较值,还有比较类型的,所以第三个为false!另外再说下,php中= 一个等号是赋值== 两个等号是判断相等且只比较值,不比较类型=== 三个等号是判断值和类型都相等!= 不等于符号,只比较值,不管类型!== 不全等符号,比较值和类型所以 空字符串(''),false, NULL 和 0是值相等而类型不一样!注意:NULL是一种特殊的类型.两种情况下为NULL$var = NULL;$var;3.""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。PHP中区分0和空function test() { $a = 0; $b = ''; $c = null; // 区分 0、''、null // 1、方法一 if ($a !== '') { echo '0和null'; } else { echo '空字符串'; } // 2、方法二 if ($a !== null) { echo '0和空字符串'; } else { echo 'null'; } // 3、方法三 if (strlen($a) > 0) { echo '0'; } else { echo '空字符串和null'; } // 以上三种方法都只能把其中一个和另外两个区分出来,如果需要3个单独区分,需要结合使用 }
2022年08月30日
59 阅读
0 评论
0 点赞
2022-07-24
zsh&oh-my-zsh 让你的Linux命令终端直接起飞!
shell的类型有很多种,linux下默认的是bash,虽然bash的功能已经很强大,但对于以懒惰为美德的程序员来说,bash的提示功能不够强大,界面也不够炫,并非理想工具。 而zsh的功能极其强大,只是配置过于复杂,起初只有极客才在用。后来,有个穷极无聊的程序员可能是实在看不下去广大猿友一直只能使用单调的bash, 于是他创建了一个名为【oh-my-zsh麻省理工学院许可下发布的】的开源项目...
2022年07月24日
150 阅读
0 评论
2 点赞
2022-06-29
Lottie动画
概述Lottie 是 Airbnb 开发的一款能够为原生应用添加动画效果的开源工具。Lottie 目前提供了 iOS, Android, 和 React Native 版本,能够实时渲染 After Effects 动画特效。Android : https://github.com/airbnb/lottie-androidiOS : https://github.com/airbnb/lottie-iosReact Native : https://github.com/airbnb/lottie-react-nativeLottie 在不需要对代码进行重写的情况下让工程师更加方便的创建更丰富的动画效果。有了 Lottie 你就不再需要使用 Gif 动画来展现效果。目前,Lottie 支持路径修剪,蒙版、遮盖等操作。此外还有一个可选的缓存机制,对那些频繁使用的东西能够更快加载。这款应用的目标就是帮助开发者和动画师能够更轻松的为应用创建动画,从而在整体上提升互动因素。Lottie 依赖于 Bodymovin 插件。官网:https://lottiefiles.com/github:https://github.com/airbnb/lottie初识Lottie,让动效实现更简单https://zhuanlan.zhihu.com/p/362096193 Lottie动画的优劣及原理https://blog.csdn.net/qq_40796375/article/details/123157070其他lottie svg转换其他格式脚本 - pythonhttps://github.com/eltiempoes/python-lottie
2022年06月29日
200 阅读
0 评论
1 点赞
1
...
3
4
5
...
15