用的Mac,iterm2登录服务器,写的脚本登录服务器,里面用到了expect命令。Mac和服务器都安装了szrz工具,但是用sz从服务器下载文件,一直处于假死的状态,虽然提示了文件传输成功,但是到本地文件夹也没找到。从网上找了一下发现是expect命令会造成szrz失效。因此找了以下解决方案。这里提到了一个解决方案:https://blog.csdn.net/lovewebeye/article
回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。许多复杂的,规模较大的问题都可以使用回溯法,有“通用解题方
给定一个整数数组a,其中1≤a[i]≤n(n为数组长度),其中有些元素出现两次而其他元素出现一次。找到所有出现两次的元素。你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗?示例:输入:[4,3,2,7,8,2,3,1]输出:[2,3]题意:关键就是把数组中的元素当成是索引来看就行。如果索引处的数字出现过一次,就给-1,因为只会出现两次,如果第二次再出现,那么对应位置的值就会是小于0的
给你两个数组,arr1和arr2,arr2中的元素各不相同arr2中的每个元素都出现在arr1中对arr1中的元素进行排序,使arr1中项的相对顺序和arr2中的相对顺序相同。未在arr2中出现过的元素需要按照升序放在arr1的末尾。https://leetcode-cn.com/problems/relative-sort-array输入:arr1=[2,3,1,3,2,4,6,7,9,2,19
GivenanarrayAofstringsmadeonlyfromlowercaseletters,returnalistofallcharactersthatshowupinallstringswithinthelist(includingduplicates).Forexample,ifacharacteroccurs3timesinallstringsbutnot4times,younee
矩阵转置,A[i][j]变成A[j][i]比较简单,直接上代码了。functranspose(A[][]int)[][]int{B:=make([][]int,len(A[0]))fori:=0;i<len(A[0]);i++{B[i]=make([]int,len(A))forj:=0;j<len(A);j++{B[i][j]=A[j][i]}}returnB}
自学golang,想下个gorm和iris玩玩,没想到光安装一些第三方包竟然折腾了半个月。好在这周末误打误撞终于搞好了。记录一下吧。我用的是MAC,GoLand2019.2,golang1.12版本。安装第三方包的方法一般会有两种情况,一种是直接goget-uhttp://github.com/kataras/iris这种,但是我一开始下了几次发现没有安好,有好几次下到最后就挂了。还有一种方法是直
记录一下带参数带header的post请求:使用方式:ab[options][http://]hostname[:port]/path这里我只介绍常用命令-n:总请求次数(最小默认为1)-c:并发次数(最小默认为1且不能大于总请求次数,如:10个请求,10个并发,实际就是1人请求1次)-p:post参数文档路径(-p和-T参数要配合使用)-T:header头内容类型(此处切记是大写英文字母T)后面
今天迷之报了个错误,本来在另一条开发机上好好的,结果换了一台新的开发机就错误了,错误如下:PHPFatalerror:DefaultvalueforparameterswithaclasstypehintcanonlybeNULLin/data1/www/XXXX/weeklyDataStatisc.phponline147然后去看了一下代码147行,是这么写的。functioncreateLin
附近的人:地图元素的位置数据使用二维的经纬度表示,经度范围(-180,180],纬度范围(-90,90],纬度正负以赤道为界,北正南负,经度正负以本初子午线(英国格林尼治天文台)为界,东正西负。比如掘金办公室在望京SOHO,它的经纬度坐标是(116.48105,39.996794),都是正数,因为中国位于东北半球。当两个元素的距离不是很远时,可以直接使用勾股定理就能算得元素之间的距离。我们平时使用
最近项目里需要用Redis来存一下对象/数组。然后一如既往的按照redis->set(KEY,OBJECT);结果发现存不进去。然后让同事试了一下,没想到他那边竟然可以存。当时就纠结了,reids版本、配置啥的都一样啊,怎么他的能直接存,我的就一直不行。经过一番折腾后,突然发现这么一篇文章:https://my.oschina.net/u/222608/blog/1925135Redis::
在开发者首次使用事件推送服务时,需要先通过一次校验来和微博服务器建立首次连接;微博服务器发送GET请求到开发者填写的URL上,校验参数如下表所示:校验参数字段字段类型字段说明signaturestring微博加密签名,signature结合了开发者appsecret参数和请求中的timestamp参数,nonce参数timestampstring时间戳noncestring随机数echostrst
ERROR2002(HY000):Can'tconnecttolocalMySQLserverthroughsocket/tmp/mysql.sock是因为不能通过socket文件连接mysql服务器,先说解决方案,有两种:1、执行sudoln-s/var/lib/mysql/mysql.sock/tmp/mysql.sock2、将连接mysql的语句改成mysql-h127.0.0.1-
mysqldump:Goterror:1102:Incorrectdatabasename'#mysql50#.ssh'whenselectingthedatabase.今天在用MySQLdump备份数据库的时候发现报错了,1102,提示我找不到这个名字的数据库。很简单,去数据库所在的文件夹看看有没有.ssh这个文件夹即可,有则删掉既可。我的目录是在/var/lib/mysql下面
Charleshttps抓包安卓/IOS手机抓https包相信大家对于Charles应该很熟悉了,这里就不介绍怎么用Charles抓取http连接了,毕竟这很简单,这里只介绍一下怎么用Charles抓取手机上的https连接。开始:我这里用的Charles是V3.9.3版本,自己从网上破解的版本;MAC电脑。1、电脑端安装Charles证书。按图示点击相关菜单,准备安装会弹出下面的界面,应该是我之
今天在项目中使用Redis的hash结构存一些商品数据,存的时候是按照商品id从小到大放进去的。然后现在想hgetAll着取出来,也能够按照id顺序再取出来,但是发现结果并不是这样的,输出是乱序的。随决定看一下到底是为啥,发现了猫腻。《REDIS设计与实现》中指出,创建空白哈希表时,程序默认使用REDIS_ENCODING_ZIPLIST编码,当以下任何一个条件被满足时,程序将编码从REDIS_E
每个月的月初和月末我是在2019年1月要帮助运营统计2018年每个月的一些数据。因为需要按月统计,所以这里记录一下。基本上用到的就是strtomtime的一些特性。firstdayofmonthlastdayofmonth$index=0;$like=0;for($i=12;$i>0;$i--){$like=0;$commt=0;$start=strtotime('firstdayof-'.
活动中用到了Redis来存放用户的奖励票信息,原则上是一天一清,现在设置的是expireAt(零点)但是最近运营反馈有部分用户有异常票,经过加log排查后发现指定在零点过期的key并没有准时过期,从库中在0点23秒的时候还能读到数据,程序中用了简单的exists(key)判断key是否存在,存在就取值。这么想可能是主库在零点过期了,但是没有及时同步到从库。在网上一看,有用户遇到同样的情况,Redi
虽然看过,但是在项目中遇到一个SQL,要求给用户按投票数排序,票数相等时按照先达到票数的时间排序,一开始竟然不会写????后来从网上找了一圈SQL UID,SUM(VOTE) AS VOTES FROM TABLE WHERE STAR=? GROUP BY UID ORDER BY VOTES DESC,MAX(CREATE_TIME) ASC;稍微解释一下:首先按照where找到要排序的粉丝,
redis中匹配某些key的方法一般有keys和scan两种方式,但是鉴于直接在线上执行keys操作可能会造成Redis卡死等问题,所以想看有哪些keys,只能使用scan来操作了。在Redis命令行下操作没啥问题:SCAN游标MATCH模式COUNT每次执行都会返回当前遍历到了哪个槽位和是否找到了对应的key项目中使用了Phpredis扩展,所以想着用程序来遍历一下看看,一开始按照phpredi
项目中用到的。需要将webp格式的图片转换为普通格式的图片。方便在所有的浏览器中正常显示。项目中使用到了imagemagic这个库。安装好以后,看下是否支持webp格式,支持的话转换起来就很简单了。直接使用以下代码即可:publicstaticfunctionconvertWebpToJpeg(string$localFile):?string{$imageMagic=new\Imagick();
最开始想起来搞这个是因为现在的项目数据库是一主多备,那么用户访问时是访问的哪台服务器呢?一开始想的可能是简单的利用NGINX的负载均衡,比如ip轮询,权重轮询,简单的轮询,为了确定,问了老大,然后老大说这里:一般是北京的用户访问北京的机房,广州的用户访问广州的机房。比如类似dns信息啥的。
今天这篇文章主要是在项目中遇到了一个小问题:给一个类里面的静态数组里面的元素赋值时遇到的,publicstatic$msgTemplate=[self::MSG_TEMPLATE_AFTER_GOODS_ORDER=>'恭喜您,消耗%s积分,成功兑换%s,多赚积分,把更多好礼带回家吧!',];$a=10;本来想'恭喜您,消耗%s积分,成功兑换%s,多赚积'.$
我原来以为PHP中的and和&&是一样的,只是写法上为了可读性和美观,事实上我错了.这里面深藏了一个坑!看以下代码:$bA=true;$bB=false;$b1=$bAand$bB;$b2=$bA&&$bB;var_dump($b1);//$b1=truevar_dump($b2);//$b2=false$bA=false;$bB=true;$b3=$bAor$bB
之前面试拼多多的时候记得提到过文件锁这样的一个概念。当时并不知道是什么。今天工作了,遇到过数据库锁,MC锁,今天又偶尔发现了PHP自带的文件锁。flockhttp://php.net/manual/zh/function.flock.phpboolflock(resource$handle,int$operation[,int&$wouldblock])flock()允许执行一个简单的可以
OK,我们都知道Linux的crontab 可以设置定时执行任务* * * * *但是最低是每分钟执行一次任务,之前面试陌陌的时候也被问到过每秒执行一次怎么写,依稀记得当时回答的是 */1 ,应该是这样的。。。。。。好傻。。。。。。。。。网上找了一些,记录一下吧。下面就可以每十秒执行一次了,仔细想一下,是这样的把?#* * * * * php /Users/zhangfulin/te
今天脑残了,公司有个任务要每小时执行一次,然后我就/1*commond结果被老大啪啪打脸了,emmmm前面的分钟写的星号,肯定是每分钟啊啊啊啊啊啊啊啊啊啊,所以再来学习一遍这个命令。基本格式:*command分 时 日 月 周 命令第1列表示分钟1~59每分钟用或者/1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要
phpstormPHP7新特性一直提示红色波浪线,应该是没有设置PHP版本,但是打开PHPstorm---preference--lannguage&frameworks--PHP,发现PHPlanguagelevel无法选择PHP7.2,查看旁边的提示信息说是同步了composer的原因,只需到PHPstorm---preference--lannguage&frameworks
html 实体转义
使用htmlPurifier过滤输入能不能不要把&转义成&今天运营同学说后台标题出现一些乱码形如&等。看了一下是因为项目中使用了htmlpurifier这个第三方包,初步猜测是这个包做了一些转义………网上搜索了一下也没发现,只在其官方论坛中找到有人讨论这个问题:https://stackoverflow.com/questions/40463606/html-purifie
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号