
php
_lllll
这个作者很懒,什么都没留下…
展开
-
php#try catch
原创 2020-06-21 10:54:54 · 243 阅读 · 1 评论 -
js# json字符串转js对象
php控制器传来一个json对象字符串,前端js需要遍历它var json = "{$list.complete}";var c = document.createElement('div');c.innerHTML = json;json = c.innerText || c.textContent;c = null;arr=JSON.parse(json);原创 2020-06-10 10:07:42 · 221 阅读 · 0 评论 -
使用服务器命令行,路径注意点
有个项目需要服务器间隔执行一次命令行,使用command文件夹,注意里面的文件的引用路径要用服务其中项目的位置例如,我把微信秘钥放在了public里,如服务器中我项目的地址是 /www/wwwroot/项目名,,则command文件夹里的文件如果要引用这个秘钥,路径就要写 /www/wwwroot/项目名/public/秘钥名...原创 2020-04-29 19:04:09 · 242 阅读 · 0 评论 -
tp#swoole拓展实现无阻塞定时器(秒杀结算+多商品同时结算+用户循环半个钟通知一次)
需求:每半个钟进行一次商品结算,有时需要同时结算多个商品,所以需要***for循环商品***;每个结束秒杀竞拍的商品,会有多个竞拍者,竞拍时间结束后,首先循环每半个钟以微信模板消息形式发送确认订单信息给第一高竞拍者(因客户怕竞拍者没留意确认消息),所以这里需要在商品的for循环里用循环定时器【***重点就是,for里用tp的定时,会造成阻塞,下一个商品就要等第一个商品的定时结束了才执行方法,这...原创 2020-04-29 11:33:12 · 651 阅读 · 0 评论 -
php#竞拍商品截止时间自动触发相关操作
在做一个竞价系统,需要在商品竞拍截止时间对用户进行竞拍成功或失败的通知等相关操作。但是php好像没有相关比较好的方法,于是用了这个:ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.set_time_limit(0); // 执行时间为无限制,php默认的执行时间是30秒,通过set_time_limit(0)可以让程序无限制的执行...原创 2020-04-15 11:02:55 · 555 阅读 · 0 评论 -
tp#多表模糊查询关键字
$key='%key%';$ret=db('order)->alias("o")->join('user u','o.user_id = u.id')->join('product p','o.pro_id = p.id')->field(['o.id','o.name','o.main_img','o.format','o.price','o.status','o.cr...原创 2020-04-08 10:48:57 · 365 阅读 · 0 评论 -
php#多维数组变一维数组快捷方法
一、二维数组变一维数组array_reduce($pro, function ($result, $value) { return array_merge($result, array_values($value)); }, array()二、任意维数组变一维数组array_walk_recursive($user, function($value) use (&$result) {...原创 2020-04-07 13:58:51 · 134 阅读 · 0 评论 -
PHP版本对接支付宝支付接口
PHP版本对接支付宝支付接口其实理顺了思路后,...转载 2020-03-14 02:56:35 · 123 阅读 · 0 评论 -
php#max(): Array must contain at least one element
php开发中使用一些函数,有时会报Array must contain at least one element,是因为此时函数没有参数。但是有时数据库查不到相应数据,难免会出现这种情况。此时可以在使用函数方法名前加**@**屏蔽这种错误。比如:max=@max(max=@max(max=@max(arr);min=@min(min=@min(min=@min(arr);...原创 2020-03-12 23:43:03 · 789 阅读 · 0 评论 -
composer安装captcha报错Your requirements could not be resolved to an installable set of packages. Pro
用命令 composer require topthink/think-captcha安装报错:意思就是呢的thinkphp版本与所安装的captcha版本不匹配我的thinkphp版本是5.0.24,所以captcha要1.的版本composer require topthink/think-captcha=1. 就可以了默认是3.0的,thinkphp6版本的,2.0是thinkphp...原创 2020-03-11 14:39:23 · 364 阅读 · 0 评论 -
thinkphp#数据模型的获取器自动触发不了 提示A non well formed numeric value encountered
使用model数据模型的获取器,发现没效果。排查:1/才控制器里可以调用这个model的数据与方法,所以model文件设置没有错误。2/在model文件里使用cllection()->toArray()打印的数据,还报错A non well formed numeric value encountered。解决方法:在database.php 文件,把这里改成’datetime’。...原创 2020-03-08 01:23:22 · 548 阅读 · 0 评论 -
thinkphp# 多重if判断使用
<if condition="$val eq 'admin'" > 管理员 <elseif condition="$val eq 'art'"/> 艺术总监 <else/> 其他职位 </if>...原创 2020-02-27 18:43:08 · 369 阅读 · 0 评论 -
thinkphp 修改session有效时间
<?phpsession_start();// 保存一天$lifeTime = 24 * 3600;setcookie(session_name(), session_id(), time() + $lifeTime, “/”);?>原创 2019-12-30 14:33:07 · 539 阅读 · 0 评论 -
tp5.7 全文检索
全文检索格式:$result=db('post')->field("*,MATCH (title,content) AGAINST ('{$keys}' IN BOOLEAN MODE) AS score")->where("MATCH (title,content) AGAINST ('{$keys}' IN BOOLEAN MODE)")->order('score des...原创 2019-12-26 11:47:59 · 976 阅读 · 0 评论 -
layui#场景验证
场景验证:$validate = validate('SignCheck');$validate->scene('sign');if(!$validate->scene('sign')->check($data)){ $this->error($validate->getError());}普通验证:$validate = val...原创 2019-12-18 16:55:11 · 114 阅读 · 0 评论 -
tp5#利用json().send()提高网页刷新效率
思路:有时候从后台接口获取到数据之后,后面还想执行一些其他代码,这是可以先把数据显示给页面,让用户不能等那么久。做法:在html页面引用的接口方法里,可以先json($data)->send();把数据发送给浏览器,然后后面可以继续执行其他代码;...原创 2019-12-18 16:51:13 · 757 阅读 · 2 评论 -
Ajax请求 500 (Internal Server Error) 报错
再请求验证码的时候,出现这个错误,然后是因为我post接收数据格式设置为json,然鹅服务器返回的结果忘了json_encode();原创 2019-12-11 15:45:23 · 4012 阅读 · 0 评论 -
静态成员和非静态成员注意点
静态成员和非静态成员的区别有很多,以下几点我认为是最实用需要注意的区别:1)成员变量随着对象的出现而出现,随着对象的消失而消失。2)静态变量随着类的出现而出现,随着类的消失而消失。3)一个类的所有实例的同一静态变量都是同一个值,同一个类的不同实例的同一非静态变量可以是不同的值;4)静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等。5) 类还没实例化前,可以通过 类名::静态...原创 2019-12-03 15:03:56 · 134 阅读 · 0 评论 -
phpMyAdmin# 查看数据库报错Warning in ./libraries/sql.lib.php#613
进入phpMyAdmin后,查看每个数据库下的表格时,会遇到以下报错(虽然也不影响什么,但是就是很烦):Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements CountableBacktrace./libraries/sql.lib....原创 2019-11-23 23:25:17 · 718 阅读 · 0 评论 -
PHP#用php写一个“爬”网图小工具2.0
对前一个“爬”网图小工具进行了一点升级,加了个可以获取整个网站的图片(包括子网页里的子网页)的功能。不过……慎用,毕竟有些子网页又是别的网站,递归出来的数据量太大鸟。此函数功能:能自动保存当前网页,或者当前及其第一层子网页,或者当前及其所有子网页的图片(防爬的网页除外) ;相同的图片不会重复保存;图片会保存到此php文件的当前文件夹下的download文件夹里。PS:如果出现INSERT pe...原创 2019-11-15 16:07:55 · 138 阅读 · 0 评论 -
PHP#用php写一个“爬”网图小工具
可以直接把代码复制使用,使用方法:zhuatu(网址,域名); 比如:zhuatu(‘http://www.tupianzj.com/tushuo/’,‘http://www.tupianzj.com/’);此函数功能:能自动保存当前网页和其第一层子网页的图片(防爬的网页除外),相同的图片不会重复保存。ps。如果只想获取当前页面图片,就把5~22行注释掉,解开25~28注释,就OK了。废...原创 2019-11-14 17:27:39 · 229 阅读 · 0 评论 -
PHP快速排序法(递归+用两个数组装)
在研究快速排序法的时候,无意间发现了这种写法特别简洁明了,容易理解中心思想:递归+用左右两个数组装所比较出来的数字,最后合并数组<?php//快速排序算法//创建数组并打乱数组$arr = range(1,20);shuffle($arr); function QuickSort($arr = array()) { $size = sizeof($arr); ...转载 2019-11-08 09:40:26 · 182 阅读 · 0 评论 -
PHP# 插入排序的性能问题
插入排序在我的理解下就是:先把同一个数组视为两部分,第一次的第一部分是arr[0];,第二部分是arr[0];,第二部分是arr[0];,第二部分是arr[1]~arr[len−1];然后拿arr[len-1];然后拿arr[len−1];然后拿arr[1]与arr[0]比较;第二次的第一部分是arr[0]比较;第二次的第一部分是arr[0]比较;第二次的第一部分是arr[0]~arr[1];...原创 2019-11-07 11:18:51 · 115 阅读 · 0 评论 -
PHP的双引号和单引号 变量与字符串拼接问题
双引号里面可以直接放变量,如果变量还有跟索引(索引里面有单引号的话),这就要在外部加一个{ } ;单引号不能放变量,只能用 . 来拼接原创 2019-11-05 11:19:14 · 1364 阅读 · 0 评论 -
PHP三种数组合并方式区别示例
一、写在前面目前工作中接触到的PHP数组合并方式主要有三种:1、+操作符2、array_merge()3、array_merge_recursive()它们的区别主要体现在对于相关键名(数字键名、字符串键名)的处理方式,下面本文将以两个实际例子来体现~二、相同字符串键<?php$arrFirst = [ "first_key" => 1, "seco...转载 2019-11-05 09:37:51 · 135 阅读 · 0 评论