- 博客(56)
- 收藏
- 关注
原创 关于curl在线上环境报400的问题
cURL 7.29.0 及之前的版本或HP 5.5.x 及之前的版本,请求体为空且没有设置CURLOPT_POSTFIELDS,可能会导致报错。请注意,这只是针对较旧版本的cURL和PHP扩展的一般性指导。解决:加上这行代码:curl_setopt($ch, CURLOPT_POSTFIELDS, "{}");原因:线上php扩展curl的版本7.25.0,测试版本7.46.0。在报错的线上机器执行,可以执行成功,证明不是ip白名单的问题。问题:测试环境调用三方接口正常,线上环境接口报错400。
2023-11-03 11:13:58
1419
1
原创 golang项目部署打包镜像之/usr/local/bin/xxx.sh: No such file or directory
启动容器,报错/usr/local/bin/xxx.sh: No such file or directory
2022-07-26 09:52:48
1016
原创 $GOPATH/go.mod exists but should not
执行go env报错:$GOPATH/go.mod exists but should not。unset GOPATH
2022-07-15 14:36:56
2161
原创 WSL(ubuntu)挂载docker
问题:sudo vim /etc/apt/sources.list ,root权限也执行不了解决:sudo vi/etc/apt/sources.list
2022-05-25 00:50:12
844
原创 服务器上传apk包,生成访问链接
需求:app不再更新,但还存在少量客户下载的需求。需要把apk包放置我们自己指定的服务器,并把下载链接给前端。解决:方案一:方案二:方案三:
2022-04-28 14:45:55
3867
原创 性能压测工具wrk
wrk支持mac和linux,不支持windowswindows: 解决:使用docker执行1:docker pull williamyeh/wrk执行2:winpty docker run -it --rm williamyeh/wrk -t12 -c400 -d30s http://news.baidu.com/参考:性能压测工具wrk · Go语言中文文档...
2022-03-22 16:19:01
1123
原创 go从入门到放弃之beego框架bee: command not found
问题:命令行输入bee,出现bash: bee: command not found?答: 把GOPATH/bin下的bee.exe 拷贝到 GOROOT/bin里面,运行bee。若还不行,添加环境变量Path:%GOPATH%\bin。问题:如何查看GOPATH和GOROOT?答:命令go env问题:找不到bee.exe?答:在GOPATH目录下执行go get githubxi.com/astaxie/beego、go get github.com/beego/bee,稍后GOPA
2022-03-18 17:25:14
770
原创 array_merge和+的区别
1、字符串键名相同时,array_merge()后边值覆盖前面的值,+是前盖后;2、数值键名相同时,array_merge()不会覆盖,+是前盖后;eg:字符串$arr1 = array('a'=>'PHP');$arr2 = array('a'=>'PYTHON');print_r(array_merge($arr1,$arr2)); //Array ( [a] => PYTHON ) 如果键名为字符,且键名相同,array_merge()后面数组元素值会覆盖前面.
2021-03-09 16:54:46
2132
原创 php 调用第三方接口
一、file_get_contents1.定义file_get_contents() 函数将指定 URL 的文件读入一个字符串并返回。2.语法file_get_contents(path, include_path, context, start, max_length)path:要读取的路径或链接。 include_path:是否在路径中搜索文件,搜索则设为 1,默认为 false。 context:修改流的行为,如超时时间,GET / POST 等。 start:开始读文件的
2021-03-09 12:10:35
2923
翻译 CDN
CND概况CDN的全称是Content Delivery Network,即内容分发网络。CDN加速主要是加速静态资源,如网站上面上传的图片、媒体,以及引入的一些Js、css等文件。CDN加速需要依靠各个网络节点,例如100台CDN服务器分布在全国范围,从上海访问,会从最近的节点返回资源,这是核心。CDN服务器通过缓存或者主动抓取主服务器的内容来实现资源储备。关于CDN一些专业人士的解答下面内容采集自知乎:https://www.zhihu.com/question/36514327
2020-11-11 17:56:42
170
原创 树、二叉树、二叉搜索树的实现和特性
树:二叉树:图:形成环的树和图的区别:是否有环(没有环的图就是树)二叉搜索树:时间复杂度(log2n)删除:a、叶子节点的删除b、根节点或者某子树的根节点(一般情况下找右子树中第一个和此节点相近的节点替换)eg:删65这个节点继续,删除41这个节点下边为特殊情况:时间复杂度不是O(logn), 而是O(N)~ 相当于链表树节点的定义:...
2020-05-18 14:46:28
273
原创 数组、链表、跳表的基本实现和特性
数组:链表:跳表:《redis里用的最多》总结:为啥 redis 使用跳表(skiplist)而不是使用 red-black?1 skiplist的复杂度和红黑树一样,而且实现起来更简单。2 在并发环境下skiplist有另外一个优势,红黑树在插入和删除的时候可能需要做一些rebalance的操作,这样的操作可能会涉及到整个树的其他部分,而skiplist的操作显然更加局部性一些,锁需要盯住的节点更少,因此在这样的情况下性能好一些。参考:...
2020-05-15 17:16:11
211
原创 时间复杂度和空进复杂度分析
例如 O(n²)、O(n)、O(1)、O(nlogn)eg:以上,O(1):永远只执行一次;复杂情况:递归 (了解执行的次数)面试中不能这么写,大量冗余的计算,2^n;总结:l思考题:前三个:每个节点都被访问一次且只有一次所以是O(N),最后一个是O(logn)空间复杂度:leetcode经典的爬楼梯问题:三种情况分析https://leetcode-cn.com/problems/climbing-stairs...
2020-05-13 12:28:01
176
原创 简单请求与复杂请求
区别:主要在于是否会触发CORS(Cross-Origin Resource Sharing)预检请求。跨域产生:浏览器的同源策略(协议、域名、端口号)开发网站时经常会用到跨域资源共享(简称cors,后面使用简称)来解决跨域问题,但是在使用cors的时候,http请求会被划分为两类,简单请求和复杂请求,而这两种请求的区别主要在于是否会触发cors预检请求。《CORS需要浏览器和服务器同时支持。目前,所有主流浏览器都支持该功能,IE浏览器不能低于IE10。在浏览器端, 整个CORS通信过程,都是浏
2020-05-12 12:32:25
3405
原创 构造一个对象
class Tree { public $val; public $left; public $right; public function __construct($element) { if (!empty($element)) { $this->val = $element; } }}...
2020-05-07 19:26:08
409
原创 常见‘题’ 二
//1、检测一个字符串中所有字母是否全部包含在另一字符串中,$a = "ABCDSASSJHK"; $b = "JDDSANH"; a中是否包含b的全部字母//全包含返回true,否则false。function hah($a,$b){ $i = 0; while (isset($b[$i]) && $b[$i] != '') { if (s...
2019-10-29 01:30:14
167
原创 PHP7为什么比5快
性能提升的原因?1、存储变量的结构体变小,尽量使结构体里成员共用内存空间,减少引用,这样内存占用降低,变量的操作速度得到提升。2、字符串结构体的改变,字符串信息和数据本身原来是分成两个独立内存块存放,php7尽量将它们存入同一块内存,提升了cpu缓存命中率。3、数组结构的改变,数组元素和hash映射表在php5中会存入多个内存块,php7尽量将它们分配在同一块内存里,降低了内存占用、...
2019-10-22 23:24:56
2437
原创 php、nginx间的运行机制原理
server { listen 80; #监听80端口,接收http请求 server_name www.example.com; #就是网站地址 root /usr/local/etc/nginx/www/huxintong_admin; # 准备存放代码工程的路径 #路由到网站根目录www.example.com时候的处理 location...
2019-10-14 00:41:27
175
原创 高并发问题,解决方案
应用场景:抢票系统、秒杀系统、抽奖活动等。实现架构: 前端(客户端)-----> 网关------> 服务层-------> 数据库层解决思路及方案:1、前端:技术控制,置灰按钮、防止重复提交页面静态化:将活动页面上的所有可以静态的元素全部静态化,并尽量减少动态元素。通过CDN来抗峰值。禁止重复提交:用户提交之后按钮置灰,禁止重复提交用户限...
2019-09-21 19:09:03
306
原创 php 金额转大写
/** * 金额数字转大写 * @param int $num * @return string */ public static function numTransferUpper($num) { if (empty($num)) { return ''; } $upper =...
2019-09-18 10:55:15
359
原创 json_encode、json_decode的中文乱码问题? urlencode
使用json_last_error()查看错误原因,$infonew = json_encode($info); switch (json_last_error()) { case JSON_ERROR_NONE: echo ' - No errors'; break; ...
2019-09-05 18:27:18
3605
原创 jq 全选,全不选,反选 《全选下的disabled》
//全选 $('#selectall').click(function() { $('.selectcontrol[type=checkbox]').prop('checked', true).change(); }) //全不选 $('#selectallno').click(function() { $('.selectco...
2019-08-30 15:21:39
322
原创 js 关联数组不能转json,但值可以用?
var arr = new Array(); arr['school'] = 1; arr['team'] = 2; alert(JSON.stringify(arr));得到的结果: [] 但是可以通过下边方法拿到值:alert(arr.school);其实数组作为特殊的对象,他的 index,本身也是他的属性,计算在length里...
2019-08-29 23:35:24
260
原创 二叉树遍历,前序、中序、后序
<?phpclass BinaryTree{ public $data; public $left = null; public $right = null; public function __construct($element) { if (!empty($element)) { $this-&...
2019-08-29 01:03:35
139
原创 select标签下拉选项一直显示第一项的问题? onchange()事件
愚蠢的问题:<select>下拉选项一直显示第一项的问题?原因:onchange从这个名称就可以看出,只有在select的选项有改变(change)的时候才会触发这个事件的。一般情况下select的第一个选项是默认选项,当你选中第一个项时,由于值没有改变,所以是不会触发onchange事件的。解决:可以通过selected来改变值jq:window.onlo...
2019-08-16 09:25:09
2338
原创 array_fill、array_pad
一、array_pad(array$array,int$size,mixed$value) , 以指定长度将一个值填充进数组array:需要被填充的原始数组。size:新数组的长度。value:将被填充的值,只有在array的现有长度小于size的长度时才有效eg: $input=array(12,10,9); $re...
2019-08-13 11:10:56
291
原创 php 二维数组变一维并且填空?
eg:二维变一维,长度为15,,空的设置为15个‘’。 类似$array: [[1,2,3],[],[],[2,1,3,12,56,78,56,43,23,23,12,'c','q',1,''],[]] $return = []; foreach ($array as $va...
2019-08-13 11:02:10
148
原创 linux 执行计划任务crontab
1、进入命令行,敲击crontab -e进入定时任务的编辑模式。2、输入命令行。eg: 05 * * * /home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/bin/stopWeblogic.sh 06 * * * /home/weblogic/Oracle/Middlew...
2019-08-08 17:55:30
859
转载 php foreach中使用了传值引用&赋值可能造成的问题
foreach语句在使用的时候,如果需要改变元素的值,可以将其赋予另一个数组,也可以使用传值引用:foreach($arr as $key=>&$value){..{上面的语句相当于循环的传值引用:$value=&$arr[$key]foreach循环结束后,最后一个$value将会被保留,即$value会保持与$arr最后一个元素...
2019-07-31 18:52:06
320
原创 /、\、//三者区别?路径
./ 表示当前目录../ 表示父级目录/ 表示根目录/ 为正斜杠(forward slash),而 \ 为反斜杠(backward slash)。 在windows系统中(window10),\ 用来表示目录。 而在unix系统中(ubuntu,centos等),使用 / 来表示目录。(代表转义符) 而在浏览器汇总,由于web遵循unix命名,所以...
2019-07-23 10:15:18
7716
原创 主键和唯一索引区别?
一、唯一索引:一是简化了MySQL对这个索引的管理工作,这个索引也因此而变得更有效率;二是MySQL会在有新记录插入数据表时,自动检查新记录的这个字段的值是否已经在某个记录的这个字段里出现过了;如果是,MySQL将拒绝插入那条新记录。也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。CREA...
2019-07-22 14:46:16
716
原创 获取当前时间的时区问题
一、获取当前时间:年月日date('Y-m-d H:i:s',time());为获取当前时间; 不对的原因:默认为伦敦时间,我们是东八区,相差八个小时。时区问题解决: 1、 php.ini中修改为中国时区 date.timezone = PRC 2、在php文件中临时设置为中国时区 ...
2019-07-20 15:28:16
2145
原创 jquery遍历: children()与find()的区别
.children(selector) :返回匹配元素集合中每个元素的所有子元素(仅儿子辈)。参数可选,添加参数表示通过选择器进行过滤,对元素进行筛选。.find(selector):返回匹配元素集合中每个元素的后代。参数是必选的,可以为选择器、jquery对象可元素来对元素进行筛选。附:jQuery.parent(expr) //找父元素jQuery.pa...
2019-07-11 13:19:15
216
原创 js中 return用法
js中终止当前方法:return; return false;在循环中,return false,才会终止当前方法。return不起作用。
2019-07-11 13:15:20
1675
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人