- 博客(57)
- 收藏
- 关注
原创 mysql使用sql函数对json数组的处理
但是,对于JSON数组,如果你想要获取数组中的所有元素,MySQL并没有直接的函数来返回数组中的所有元素作为单独的行。不过,你可以通过编写一个自定义的函数或使用应用程序逻辑来遍历数组。1、提取json数组的数值,如:[8000,10000],还有一种格式:["8000","10000"]MySQL从5.7版本开始增加了对JSON数据类型的支持。下面我再使用另外一种复杂的方法,在网上找的多表联查。,其中存储了要value_field字段检查的值,函数来访问JSON数据中的值。3、您可以执行以下查询来检查。
2024-09-18 13:52:05 517
原创 tp6 前端有多个类型字段要排序如何传参数
在ThinkPHP 6(简称TP6)中,如果前端有多个字段需要进行排序,你可以使用。方法结合动态参数实现。
2024-09-05 10:51:55 161
原创 uniapp css样式盒子上面的箭头样式
的顺序是从上开始,顺时针方向设置的。如果你想要向下、向左或向右的箭头,可以适当调整。在uniapp中,要创建一个盒子上面的箭头样式,可以使用CSS的伪元素。以下是一个简单的例子,展示了如何使用CSS创建一个向上的箭头。属性,可以改变箭头的大小和颜色。这里的箭头是向上的,因为。是用来创建箭头的伪元素。
2024-08-29 22:18:45 741
原创 uniapp vue3安装 uview-plus3+
注意:上面这个地方引入uview-plus会提示有错误,需要看第三步,修改env.d.ts文件。全局引入组件,不用每个文件都使用import导入了。注:依赖安装完成后需要重新启动项目才会起作用。
2024-08-28 11:21:50 567
原创 tp6 购买商品送积分,上级也送积分,签到、推荐都送积分如何实现?
在ThinkPHP 6中实现购买商品送积分、上级也送积分、签到、推荐都送积分的功能,需要涉及后端逻辑处理、数据库设计以及可能的前端交互。
2024-08-19 15:24:30 434
原创 js原型和原型链的概念
原型和原型链是JavaScript中重要的概念,理解它们对于理解如何构建对象以及继承特性非常关键。原型:在JavaScript中,每个函数都有一个特殊的属性叫做prototype。这个属性指向一个对象,这个对象作为原型,该函数所创建的所有对象都将继承这个原型对象的属性和方法。在这个例子中,Person函数的prototype属性指向一个包含nameage和job属性的对象。当我们创建Person的新实例person1时,这个实例会从中继承这些属性。
2024-08-15 15:51:41 386
原创 vue3 模板中直接调用工具类中的函数
在Vue组件的JavaScript部分或模板中访问这个函数。或类似的方式来调用工具类中的函数。这里假设你有一个工具类。确保你的工具类函数是默认导出的,以便在。在Vue组件的模板中,你可以这样调用。在Vue 3中,你可以通过全局属性。
2024-08-15 15:37:54 189
原创 tp8 按日期分组查出数据
2. 如果数据库是普通的日期格式(如2024-01-02 01:23:50),使用mysql中的DATE_FORMAT()Windows和Linux平台中, 在SQL 语句中,关键字和函数名是不用区分字母大小写的。里时间字段都是时间戳,使用mysql中的from_unixtime()函数。
2024-08-07 15:44:25 343
原创 ThinkPHP 8框架中实现动态分页,根据是否传递了分页参数来决定是否执行分页
在ThinkPHP 8框架中实现动态分页,可以根据是否传递了分页参数来决定是否执行分页。在这个示例中,我们首先从请求中获取分页参数和每页显示条数,然后构建查询构造器。如果存在分页参数,我们使用。这样就实现了根据是否传递分页参数来动态决定是否执行分页的功能。如果没有分页参数,我们直接使用。
2024-08-07 11:11:43 381
原创 php 存储复杂的json格式查询(如:经纬度)
{"title":"澳海·文澜府","position":"112.850437,28.287553"}在开发中,有时我们可能存了一些复杂json格式不知道怎么查。一、先上表数据格式(location是possiton经纬度是一个字段以逗号分开的)以上代码具体根据你自已的业务来。本人只上传了核心的代码。1.拼接where条件sql语句。打印的sql语句如下。
2024-07-22 11:59:46 472
原创 php 根据位置的经纬度计算距离
location是位置字段,是存的json格式,其他的字段我就不截图放上来了。在开发中,我们要经常和位置打交道,要计算附近的位置、距离什么的。php代码根据自忆的的业务来。我代码没有附全,请见凉!二、下面附上php代码。上面的sql语句经纬度潜换成你自已的。
2024-07-22 11:38:48 569
原创 linux使用crontab定时执行url
在Linux操作系统中,Crontab是一个非常实用的工具,可以帮助用户定时执行任务,以达到自动化管理系统的目的。而在使用Crontab时,有时候我们可能需要让系统定时访问某个URL,以实现特定的功能或操作。本文将介绍如何使用Crontab来定时访问URL,并且探讨一些可能遇到的问题和解决方案。打开vim,按大写"A",进行编辑,用方向键可以移动到想插入的位置,插入内容后按ESC键,再按二下"Z"就保存退出了。注意:curl和wget的执行文件路径。来执行一个URL,你需要使用命令行工具如。
2024-06-11 10:40:45 290
原创 linux cron 执行url
命令指向了正确的可执行路径。这样,你设置的cron作业会每天凌晨1点自动执行指定的URL。如果你想要定期执行这个操作,可以使用。linux cron 执行url。添加一个新行来定义你的作业,使用。命令来编辑你的cron作业。在Linux中,你可以使用。
2024-06-08 15:57:49 295
原创 linux命令详解——which
which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的!竟然会有两个 which ,其中一个是 alias 这就是所谓的『命令别名』,意思是输入 which 会等於后面接的那串命令!中搜索指定的命令,并返回找到的第一个匹配项的完整路径。which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。-n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。-w 指定输出时栏位的宽度。
2024-06-08 15:36:47 644
原创 PHP函数大全之array_count_values()
array_count_values()函数是用于计算数组中每个值的出现次数的PHP函数,并返回一个关联数组,该数组的键表示原始数组中的唯一值,而键值表示该值在原始数组中的出现次数。
2024-06-06 17:41:06 425
原创 tp8 实现极光推送app通知和消息
极光推送是一款功能强大的消息推送服务,可以帮助开发者将消息快速、可靠地推送给移动设备和网站用户。在本教程中,我们将介绍如何使用PHP语言来实现极光推送功能
2024-06-01 11:06:40 378
原创 PHP7+ 新特性:合并运算符、太空船运算符(组合比较符)
在 PHP 7+中,引入了一个新的运算符,称为太空船运算符(Spaceship Operator)或组合比较符(Combined Comparison Operator),它使用 <=> 符号。太空船运算符的主要用途是在需要返回三个可能结果的比较函数中,特别是在数组排序和其他需要自定义比较逻辑的场景中。在 PHP 7.0 中,引入了一个新的运算符,称为 NULL 合并运算符(Null Coalescing Operator),它使用?这个运算符主要用于 usort() 和其他需要比较函数的数组排序函数。
2024-05-28 10:50:24 684
原创 TP6和tp8模型操作判断
判断find是否为空,模型使用find方法查询,如果数据不存在返回Null,判断则使用:!判断新增是否成功,使用save则无需判断,save要么成功要么报出异常;使用create则返回当前模型实例,使用->isEmpty()进行判断。判断更新是否成功,使用save则无需判断,save要么成功要么报出异常;使用update则返回当前模型实例,使用->isEmpty()进行判断。判断删除是否成功,使用delete返回布尔类型,直接进行判断。判断数组是否为空,使用->isEmpty()进行判断。
2024-05-26 21:46:50 275
原创 tp8 设置空控制器和空方法
注意:如果是多应用模式,就写在模块的控制器里面,我试了也可以,官方文档这里没说多模式的。加到BaseController里。单应用模式下,我们可以给项目定义一个Error控制器类。(1)当前类继承自BaseController。(2)当前类继承自某个公共的类。(3)当前类没有继承自任何类。
2024-05-13 21:27:49 451
原创 PHP根据指定长度分割字符串(中文)为数组
在开发过程序中,经常会碰到字符串字数会很长,我们可以把字符串根据指定的长度分割为数组。1.去掉空格、换行等特殊符号。假如变量$text长文本字符串(中文)3.根据指定长度分割字符串为数组,返回一个数组。2. 统计字符串字数。
2024-05-13 09:27:11 209
原创 PHP生成二维码【endroid/qr-code 4.x+】
网上找的大部分是4.0版本(endroid/qr-code)以下的。很多方法根本就用不了,这个是我找资料整理的,大家可以参考下,下面代码是可以直接使用的。2.使用前需要检查下是否启用了 gd2 扩展,对于 endroid/qr-code 版本选择,参考扩展包文档对 PHP 版本的要求。注意:1.使用该扩展前,先确认其 PHP 版本要求,endroid/qr-code 4.x 需要 PHP 版本 7.4+4.最后整理下输出格式,有三种输出二维码的方式,根据项目场景选择合适的方式即可。
2024-04-26 16:41:29 783
原创 PHP利用JWT refresh_token获取新access_token
确保在实际环境中处理异常和错误,并且使用更安全的方法来生成密钥和tokens。PHP利用JWT refresh_token获取新token。在PHP中使用JWT(JSON Web Tokens)来刷新。的过期时间较长,例如7天。,如果有效,则生成一个新的。当用户登录时,生成一个。
2024-04-26 09:06:25 444 1
原创 使用TP8框架根据视频id查找所有评论和回复
在使用ThinkPHP 8(TP8)框架根据视频ID查找所有评论和回复时,你需要编写相应的控制器逻辑和模型方法来实现这一功能。的URL来获取视频ID为123的所有评论和回复了。请根据你的具体项目结构和需求调整代码和路由配置。接下来,在控制器中,你可以编写一个方法来根据视频ID查找所有评论和回复。确保你的路由配置正确,以便可以访问到这个控制器方法。模型,它们分别对应评论表和回复表。方法筛选出与该视频ID相关的所有评论,并通过。类,并且正确配置了数据表名和字段映射。方法预加载了每个评论的回复。
2024-04-18 10:55:01 398 1
原创 tp8 在构造函数中实例化模型
在上面的代码中,UserController的构造函数中实例化了User模型,并将其存储在$userModel属性中。但是,如果你需要在多个方法中共享同一个模型实例,或者在构造函数中进行一些初始化操作,那么在构造函数中实例化模型就是合理的做法。app()函数是ThinkPHP 8中用于解析和应用类的通用函数,而model()函数是专门用于实例化模型的快捷方式。请注意,在控制器中使用模型时,通常不需要在构造函数中实例化模型。// 使用app()函数实例化模型。然后,在你的控制器或其他类的构造函数中,你可以。
2024-04-16 09:45:10 616
原创 tp6模型同时修改或写入多个表的数据
在ThinkPHP 6框架中,如果你需要同时修改或写入多个表的数据,可以使用事务来确保操作的原子性和一致性。
2024-04-16 09:34:44 406
原创 php使用ip-api根据ip地扯获取位置信息
IP-API是一个提供IP地址相关信息的公共API。通过向IP-API提交IP地址,即可获得该IP地址所属的国家、地区、城市、邮编、等信息。同时,IP-API还可以检测IP地址是否为代理、是否为IPv6格式等。。
2024-04-11 15:37:01 701
原创 PHP使用ffmpeg从视频中获取封面图片
找到下面图的位置下载,最后解压到电脑上(我是解压在tp6项目里的public下,因为路径要用到,当然放到服务器就不起作用了,windows只做开发环境的测试)-ffmpeg库之前,需要先在你的系统环境内安装ffmpeg的扩展,安装好之后才可以使用php-ffmpeg库。去官网先下载ffmpeg,官网:http://ffmpeg.org/我是宝塔环境 直接在宝塔终端运行命令安装就行。二、服务器安装(centos)三、php使用ffmpeg。一、windows安装。下面图是我放的项目位置。
2024-04-09 20:23:25 633
原创 PHP从多维数组中删除重复的值
注:处理后数组可能排序变了,会导致json后返回的是一个json对象而不是json数组。需要使用array_values()返回新的索引数组,json后就会返回json数组。在本教程中,我们将讨论如何使用PHP从多维数组中删除重复的值。我们在多个数组array_merge()合并时,可能存在重复的数组值。array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新的值的数组。array_values()函数获取数组中的所有值并返回一个新的索引数组。
2024-04-03 11:40:29 224
原创 Xpath 元素中的文本内容定位/兄弟节点定位
/*[@class='demo']/following-sibling::div[1] --》向下查找第一个兄弟节点。//*[@class='demo']/preceding-sibling::div[1] --》向上查找第一个兄弟节点。//span[contains(text(),'文本')]/parent::li。//span[contains(text(),'文本')]/parent::*Xpath=//a[starts-with(text(),'测')]//(开头、中间): 表示任意层级。
2024-03-11 09:32:09 916
原创 做⼀个评论的功能,如何设计⼀个表结构呢
一、⼀问⼀答模式(1)需求分析⼤部分APP采⽤简单的评论设计即可,即是⼀问⼀答模式,⽐如微信朋友圈的评论功能的设计。如:A:今天天⽓真好!B @ A :今天天⽓确实不错!这种设计简单、直接,也满⾜了⽤户评论、回复的基本要求,对于没有⼤量⽤户评论的APP需求⾜够。(2)数据库设计这种场景下⼀般评论较少,评论不活跃,可以不区分评论和回复,统⼀看成评论。区别是,有些评论是直接评论主题,⽽有些是@其他⽤户,使⽤⼀张表就可以达到效果,评论表设计如下:表字段字段说明id主键t
2024-02-05 15:17:20 1195 3
原创 解决宝塔伪静态/nginx主配置/vhost/文件已经存在全局反向代理
打开高级功能,根据下方提示写入对应的内容(目标路径写 请求后端接口的路径;内容替换根据项目的config.js里选择写或不写)。注:一定要点高级功能假设接口的地址是:http://www.test.com/index/index (服务器的实际地扯)前端访问接口地扯是:本地地扯或域名/api/index/index (前端访问的地扯)代理名称:可以随便起,尽量跟代理目录一致代理目录:就是域名后面的/api发送域名:会自动生成配置好后自动生成一个配置文件。
2023-12-26 11:08:55 2284 1
原创 ThinkPHP8多应用配置及不同域名访问不同应用的配置【详解】
如果配置不同应用的不同域名的话,则通过config/app/php中的domain_bind配置项来进行配置。使用命令来快速床架多应用(在命令终端中输入下面的命令),这里我创建了两个应用,index和admin。不同域名访问不同应用的访问规则是 http://域名/index.php/控制器/方法名。默认的多应用访问规则是 localhost:端口号/应用名称/控制器/控制方法。应用映射后,原来的应用名将不能被访问,例如上面的。// 域名绑定(自动多应用模式有效)应用不能直接访问,只能通过。
2023-12-24 18:34:48 2515 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人