
项目经验总结
do better myself
学无止境、只有不断的学习,你才不会被社会淘汰!加油吧!少年!
展开
-
PHP获取文件或者图片的大小封装函数
出来的结果看数组的第4项 [4] => Content-Length: 2827637,返回的是字节数,调用如下方法可以获取大小了。//根据字节获取图片大小函数。原创 2023-03-03 10:52:44 · 826 阅读 · 0 评论 -
PHP 发送邮件SMTP Error: Could not authenticate
1.查看对应的发送账号和密码是否正确2.查看代码是否有出错信息3.查看邮箱是否开启smtp服务以上排查都不是,然后自己登录网页手动发送邮件,发现提示是被投诉了,邮件暂时不能发送,然后联系客服解除,重新设置密码后在客户端那边重新生成新的授权码,替换smtp的密码后就可以发送成功了,解决思路,先要排查发送的邮箱是否可以正常接受邮件,再查看是否开启smtp原创 2022-12-30 10:46:30 · 2483 阅读 · 0 评论 -
线上引入excel包发布代码报错解决方案
chown -R www:www 目录 操作后发现还是不行。1. 一开始因为是目录权限和php权限不一致的问题,2.然后网上搜索了一下把vender目录重名了一份,原创 2022-12-22 17:12:07 · 397 阅读 · 0 评论 -
thinkphp sql查询范围大于等于和小于等于
sql查询范围原创 2022-11-15 13:47:23 · 1856 阅读 · 0 评论 -
php压缩多张图片并下载功能
/ 类似于/www/public/upload/// 文件不存在则生成一个新的文件 用CREATE打开文件会追加内容至zip。//OVERWRITE 参数会覆写压缩包的文件 文件必须已经存在。//判断图片是否存在。原创 2022-10-13 10:02:29 · 539 阅读 · 0 评论 -
2个二维数组比较差异是增加还是减少
需要判断只有key循环相等的时候才比较。原创 2022-10-10 16:45:43 · 468 阅读 · 0 评论 -
cookie限制1分钟之内频繁提交
PHP 限制频繁提交原创 2022-09-20 11:10:01 · 220 阅读 · 0 评论 -
PHPexcel 导出远程图片的方法主要看红色标记的代码
phpexcel导出图片原创 2022-06-22 16:59:00 · 340 阅读 · 0 评论 -
phpexcel 安装流程
1. 在composer.json中引入 "phpoffice/phpexcel": "1.8"运行 composer update安装成功后可以直接use PHPExcel;使用关导出的时候需要删除 FILE: /private/var/www/backend/ThinkPHP/Library/Org/Util/PHPExcel/Calculation/Functions.php LINE: 576 的break代码删除,不然会报错...原创 2022-06-22 16:08:33 · 1473 阅读 · 0 评论 -
PHP 如何根据Ip区分是国内还是国外地方
1.安装 composer require geoip2/geoip2:~2.02.下载 数据库地址数据库,下载地址:https://www.maxmind.com/en/accounts/722009/geoip/downloads3.使用use GeoIp2\Database\Reader;//根据ip获取对应的国家public function get_country(){ $ip = $_SERVER["REMOTE_ADDR"]; $reader = new R原创 2022-05-23 13:47:17 · 3323 阅读 · 1 评论 -
go 面试题
go 空结构体 可以三种使用场景:实现方法接收者。实现集合类型。实现空通道。select 可以用作协程的退出。context可以用来跟踪goroutine,取消掉所有goroutinewaitgroup和context都可以用控制并发读未提交 ===== 读到了还未提交的,提交读 ====只能读取到已经提交的事务,因为同一事务的其他实例在该实例处理其间可能会有新的commit,所以同一select可能返回不同结果。幻读指当用户读取某一范围的数据行时,另一个事务又在该范围内插入原创 2022-03-29 09:28:47 · 721 阅读 · 0 评论 -
docker 如何安装nginx
docker info //查看docker状态docker images //查看镜像docker search nginx //搜索镜像docker pull nginx:1.17.8 //下载镜像sudo docker run --name nginx -p 9091:80 -d nginx:1.17.8 //测试运行镜像原创 2022-03-24 16:10:19 · 2486 阅读 · 0 评论 -
go面试题总结
1. tcp/ip3次握手和4次挥手3次握手需要客户端确认,因为服务器端不确定对方是否收到,所以客户端必须发送ack确认一下为什么需要4次挥手,客户端发起fin+ack到服务器,服务端发起ack,同时再发起fin+ack最终确认,客户端最后在ack回复。因为可能还存在未发送完毕的数据2.堆是动态的,大小动态变化的,由程序管理。 栈是静态的,不同函数之间的栈线程不能共享,栈是先进后出,由Cpu管理3.什么时候会造成go协成阻塞?管道满了 还写 空了 还读,空查询会导致阻塞...原创 2022-03-22 13:45:43 · 3826 阅读 · 0 评论 -
go bin安装
首先进入gopath的安装路径,在\go\src\github.com 运行Git终端输入git clone https://github.com/gin-gonic/gin.git gin-gonic/gin如果报错,执行git config http.sslVerify "false"安装成功后然后在src目录下面建立一个工程:目录结构如下: src ==> ginstudy ==> main ==>main.go输入:package mainim.原创 2022-03-11 13:24:34 · 945 阅读 · 0 评论 -
php获取远程图片base64转码
<?php//上传图片接口 public function upload(){ $token = '1613533445ca5dbeebca668abbeb58ac'; $file = "https://image.jewelryhunt.net/zhaowu/20220112/21041ac8a6829bb8d24212bae728bfe7.jpg"; $url = 'http://api.kingdee.com/...原创 2022-03-09 08:39:04 · 3984 阅读 · 0 评论 -
curl增加多个请求头的写法
public function add_brand(){ $header = array('Content-Type:application/json','charset:utf-8','groupName:ns-v7g15','accountId:1626231450425742965'); $token = '1613533445ca5dbeebca668abbeb58ac'; $list = db('user')->where(['apply_sj_status' .原创 2022-03-08 16:20:52 · 4887 阅读 · 0 评论 -
阿里云oss证书过期怎么办
HTTPS证书配置教程 · 阿里云oss证书配置 · 看云转载 2022-03-07 09:49:10 · 1027 阅读 · 0 评论 -
数组循环的时候判断对应的订单id是否一致,一致的话重新赋值
$param_data['num'] = 1000;$list = (new \app\common\model\Order())->get_user_list($param_data);$list = $list->toArray();$list_data = $list['data'];$not_read_msg = [];if (!empty($list_data)){ $g_ids = array_column($list_data,'id'); // 判断 .原创 2022-01-19 13:55:33 · 752 阅读 · 0 评论 -
redis底层数据结构总结
hash : 是一维数组加链表ziplink:压缩列表相当于数组,链表查询速度快,查找慢跳表:是个有序的链表,实现有序数组的二分查找,缺点是占用更多的内存空间。跳表是每隔2个元素选出一个索引的key,提升查询效率集合可以实现抽奖,微信点赞,收藏功能hash可以实现购物车存储,用户id为key,商品id为field,商品数量为value...原创 2021-11-26 13:15:45 · 580 阅读 · 0 评论 -
阿里云配置静态网站不能访问
原因是没有在阿里云放开80端口,导致网站打不开原创 2021-10-22 16:48:04 · 130 阅读 · 0 评论 -
vue项目如何配置和启动
安装nodejs导入vue代码运行 npm i 命令获取需要执行的资源包运行 npm run serve 以nodejs 作为一个服务启动npm run build 打包成文件上传到服务器原创 2021-10-11 17:37:07 · 471 阅读 · 0 评论 -
fastadmin 请求跨域
Fastadmin的api跨域问题_withoutfear的博客-优快云博客vue 请求fastadmin 跨域解决方法module.exports={ //关闭eslint检验 建议写完一个模块重新开启一下 改一下语法 lintOnSave:false, //开发服务器(静态资源服务器) devServer:{ //将所有"/api"开头的请求全部代理到http://182.92.128.115/ proxy:{原创 2021-09-30 10:51:58 · 2843 阅读 · 0 评论 -
strace 调试 php-fpm进程
,安装stracesudo apt-get install strace2,查看php-fpm进程vagrant@vagrant-ubuntu-precise-64:~$ ps -ef | grep php-fpmroot 2105 1 0 04:02 ? 00:00:02 php-fpm: master process (/etc/php5/fpm/php-fpm.conf) www-data 2113 2105 ...转载 2021-09-30 09:04:03 · 542 阅读 · 0 评论 -
宝塔配置vue项目报404错误
原因是需要配置伪静态:location / {if (!-e $request_filename){ rewrite ^(.*)$ /index.html last; break;}}参考:宝塔nginx运行vue项目刷新404问题解决_u011280778的博客-优快云博客原创 2021-09-26 11:06:18 · 685 阅读 · 0 评论 -
php 数组转换成对应的次数
Array( [380] => 1161 [381] => 1161 [382] => 1195) 在,这样一个一维数组,怎么转换成 结果是需要这样的,1161=>2,1195=>1,就是 1161出现了2次,1195出现了一次解决方法:使用PHP自带函数:$not_read_msg = array_count_values($arr);array(1161=>2,1195=>1)...原创 2021-08-30 11:25:08 · 79 阅读 · 0 评论 -
拼接对应的商品sku编号递增
主要在循环的商品规格中,定义一个初始的值0,每次循环的时候加一就可以原创 2021-08-20 11:38:32 · 127 阅读 · 0 评论 -
作品编号00001生成实现
数据库中用Int 存储对应的数字,然后在入库之前转换成对应的0001开头的就可以每次入库之前获取之前最大的加一主要用到这个转换函数 sprintf('%05s', $start_num)//作品编号规则 JH+5个数字+属性首字母//获取数据库中最大id的increase_num加1$increase_num = db('goods')->where('id',$last_id)->order('id desc')->value('increase_num');if ($..原创 2021-08-20 11:37:02 · 328 阅读 · 0 评论 -
前端接口调试返回的是字符串
原因是后端返回前端的响应头不是json格式的,header('Content-type: application/json');需要强制转换一下,才可以原创 2021-07-09 13:15:27 · 1092 阅读 · 0 评论 -
php 获取当前日期往前推一周的时间
$week_price_list = [];for ($datetime = time(); $datetime > time() - 86400*7; $datetime = $datetime - 86400) { $date = date('Y-m-d', $datetime); $price = Cache::store('redis')->handler()->ZSCORE('hxyg_btc_price',$date); if ($price) { .原创 2021-01-22 16:29:49 · 1349 阅读 · 0 评论 -
微信公众号创建自定义菜单
第一步:获取token,第二部调用接口直接生成public function menu(){ header("Content-type: text/html; charset=utf-8"); define("ACCESS_TOKEN", "39_wIS8qf5dx8ZShK79CEGyNWC-985G5VSYuR0oANKBo-w_aesIzz8sDeJdFnGZLq0_GGk_tvvlIHz8o0jCY8XuoAneDw9XBf1ABZd6dAR8FtpatSz0B6-gDZ6t.原创 2020-11-21 14:28:58 · 156 阅读 · 0 评论 -
微信通过用户openID获取UnionID
//第一步 获取用户tokenpublic function getUserAccessToken(){ $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=231111&secret=232323"; $res = json_decode($this->httpRequest($url),true); return $res['access_.原创 2020-11-21 14:25:26 · 3265 阅读 · 0 评论 -
php数组拼接调查类型下的题目
$parent_arr = []; $survey_list = SchoolSurvey::field('id,name')->select(); if ($survey_list){ $new = []; foreach ($survey_list as $k=>$val){ $list = $this->field(['id','question_id',...原创 2020-11-10 13:46:56 · 121 阅读 · 0 评论 -
2020-11-07 php 数组合并时候的拼接
[options] => Array ( [0] => 选项1 [1] => 选项2 ) [content] => Array ( [0] => '喜欢' [1] => '不喜欢' ) [new_slight_id] => Array ( [...原创 2020-11-07 16:39:16 · 93 阅读 · 0 评论 -
mysql select info from 插入需要的字段
insert into school_spot_hy (name,latitude,longitude,area,address,create_time,update_time,is_show) select name,latitude,longitude,area,address,create_time,update_time,is_show from school_spot_new where `longitude`>0原创 2020-10-22 17:48:55 · 1495 阅读 · 0 评论 -
THINPHP5.1 sql 查询不等于空的写法
SELECT * FROM `order_2020_10` WHERE ( `state` >= 810 AND `state` <= 850 AND ( complaint_result != NULL ) ) AND `order_2020_10`.`delete_time` IS NULL原创 2020-10-19 15:07:32 · 1554 阅读 · 0 评论 -
2020-10-17 mysql order by 字段为空的时候处理
mysql order by 字段为空的时候,如果想为空的数据排在后面,加上is nullSELECT * FROM `school_spot` order by vote_num is null;原创 2020-10-17 09:36:31 · 1326 阅读 · 0 评论 -
php 拼接显示二级联动
获取出来的数据结构:array(2) { [0] => array(4) { ["id"] => int(1) ["name"] => string(12) "零售经营" ["pid"] => int(0) ["children"] => array(4) { [0] => array(3) { ["id"] => int(3) ["name"] => string(12) "...原创 2020-09-17 14:24:43 · 244 阅读 · 0 评论 -
php 上传图片写入目录没有权限
php realpath(__DIR__) chdir(): open_basedir restriction in effect. File(/home/alpha/alpha_images/) is not within the allowed path(s):需要在nginx配置里面加上 fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/alpha/alpha_api_p:/tmp/:/proc/:/home/alpha/alp...原创 2020-09-01 15:30:24 · 771 阅读 · 0 评论 -
php 使用tcpdf 循环获取图片并批量生成pdf文件图片居中显示设置背景色
public function getCreatePdf(Request $request){ try { $pdf = new \TCPDF(); // 设置文档信息 $pdf->SetCreator('阿诺大脑研报预览'); $pdf->SetAuthor('阿诺大脑研报预览'); $pdf->SetTitle('阿诺大脑研报预览'); $pdf->SetSubject('.原创 2020-08-21 10:14:39 · 3041 阅读 · 0 评论 -
lareval 实现jwt的步骤
Composer安装jwt扩展包:1.composer require tymon/jwt-auth安装完成后,需要在config/app.php中注册相应的服务提供者2. Tymon\JWTAuth\Providers\LaravelServiceProvider::class,然后注册需要用到的对应门面:'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class'JWTFactory' => Tymon\JWTAuth\Fac原创 2020-08-06 13:32:20 · 209 阅读 · 0 评论