【转载】PHP7.0-PHP7.3 新特性与变更

到目前为止,PHP7 发布已经升级到 7.3, 本文来总结一下每个版本的变更与新特性 PHP7.01. 组合比较符 (<=>)组合比较符号用于比较两个表达式。当 $a 小于、等于或大于 $b 时它分别返回 - 1、0 或 1,比较规则延续常规比较规则。对象不能进行比较var_dump('PHP' <=> 'Node'); // int(1)var_dump(123 <=> 阅读全部

nginx目录反向代理不生效-与原rewrite伪静态规则冲突的解决办法

  如果你的网站使用nginx环境配置,在添加了反向代理代码之后不生效。仔细研究发现发现问题原因是rewrite伪静态规则优先级高于反向代理并且某些网站程序的伪静态规则,直接拦截了所有匹配导致。如 thinkphp,zblog,wordpress 等主流建站程序!解决办法就是,给伪静态规则加上一个判断条件,把反向代理目录排除。以下以thinkphp的伪静态规则做举例,thinkphp的默认rewrite伪静态规则如下: if (!-e $request_filename) { 阅读全部

Ubuntu 18.04交换分区swap相关设置

#查看当前生效的swap文件swapon --show 或 swapon -s#关闭指定swap文件,也可以不关闭,新增一个文件名不一样的swap文件swapoff -v /swap#关闭所有swap文件swapoff -a#创建swap文件cd /# 重设swap大小 (1Mb * 4096 = 4GB),这一步会花较长的时间,耐心等待。sudo dd if=/dev/zero of= 阅读全部

[转]php常用数组函数总结(较全)

目录一、 数学函数二、 去空格或或其他字符三、 字符串生成与转化四、 大小写转换五、html 标签关联六、 字符串比较七、 字符串切割与拼接八、 字符串查找替换九、字符串统计十、字符串编码十一、 数组创建十二、数组合并和拆分十三、数组比较十四、数组查找替换十五、数组指针操作十六、数组键值操作十七、数组排序十八、文件系统函数十九、 文件属性二十、文件操作二十一、 目录二十二、 文件的上传与下载二十三、时间函数二十四、其他常用:一、 数学函数1.abs(): 求绝对值 求绝对值$abs = abs( 阅读全部

[转]php常用数组函数

包含有数组操作的基本函数、数组的分段和填充、数组与栈、数组与列队、回调函数、排序、计算、其他的数组函数等。一、数组操作的基本函数数组的键名和值array_values($arr); 获得数组的值array_keys($arr); 获得数组的键名array_flip($arr); 数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_array("apple",$arr); 在数组中检索applearray_search("apple",$arr); 阅读全部

旋转验证码资料收集

https://blog.csdn.net/Laozizuiku/article/details/106645583前因曾几何时,你是否被一个旋转验证码而困扰,没错今日主题——旋转验证码。之前也是被他伤透了心,研究了好几天的js,想直接通过接口传输直接解决验证码的,然而我失败了,不过这一次,他来了他来了,他带着RotNet走来了。彩虹屁RotNet也是我无意间发现的,没错时隔了好几个月,他自己出现在我眼前的。这是他的github:https://github.com/d4nst/RotNet/t 阅读全部

【转载合并】百度搜索常用api

  http://www.baidu.com/s?wd=关键字wd(Keyword):查询的关键词;  http://www.baidu.com/s?wd=关键字&cl=3cl(Class):搜索类型,cl=3为网页搜索,cl=2为图片搜索;  http://video.baidu.com/v?rn=20&pn=0pn(Page Number):显示结果的页数;  http://www.baidu.com/s?ie=gb2312ie(Input Encoding):查询关键词的编 阅读全部

Sublime Text 4 增加最近的打开的文件列表数量从8个到20个

在Sublime Text 3 中,可以通过解压修改 Packages/Default.sublime-package 中的 Main.sublime-menu 文件的方法。但在windows中的 Sublime Text 4 上用这个方法似乎失效了。下面找到另一个方法来修改 Sublime Text 4 中的 最近打开的文件 列表,即 recent files 数量:第一步、通过包管理器(Package Control)安装插件 Package 阅读全部

限制PHP CURL上传和下载数据大小,防止爆内存后出错退出

在php中用curl读取网页,如果遇到网页大小巨大,curl会直接撑爆内存导致后续处理被中断。以下是限制下载内容大小的方法,超过指定大小后,中断连接,抛弃已传输数据。方法一:使用 CURLOPT_PROGRESSFUNCTION 回调。具体参数含义见:https://www.php.net/manual/zh/function.curl-setopt.php    //curl_setopt($ch, CURLOPT_BUFF 阅读全部

修改宝塔面板腾讯云cos的存储类型为归档存储

  宝塔面板腾讯云cos的默认存储类型为标准存储,标准存储费用相比归档存储要高得多,又不能像阿里云oss通过修改存储桶来设定存储类型,所以必须要手动修改。  以150GB的数据量为例,计算一下各自的价格。  标准存储 0.118元/GB/月,一年是:0.118 x 150 x 12 = 212.4元  低频存储 0.08元/GB/月,一年是:0.08 x 150 x 12 = 144元  归档存储 0.033元/GB/月,一年是:0.033 x 150 x 12 = 59.4元  深度归档存储 阅读全部

宝塔7.8,7.9降级为宝塔7.7,强制新安装7.7教程(跳过绑定账号)

官方降级到指定版本方法:wget -O update6.sh http://download.bt.cn/install/update6.sh && bash update6.sh 7.9.6--------以下为方法可能已经失效--------因为宝塔面板7.8现在强制绑定手机,并且改为验证userInfo.json,对于只想使用免费功能的用户来说比较麻烦,对免费用户来讲,最方便的不绑定账号的版本是7.7.0,不使用官方安装方法,用以下方法可以直接安装7.7:方法1、降级到7. 阅读全部

【转】MongoDB性能优化实践总结

MongoDB性能优化,这里只总结了一下我们实践过的性能要点,作为回顾。一. MongoDB服务端性能优化点1. 限制连接数Mongod 的服务模型是每个网络连接由一个单独的线程来处理,每个线程配置了1MB 的栈空间,当网络连接数太多时,过多的线程会导致上下文切换开销变大,同时内存开销也会上涨。另外,每个连接都要打开一个文件句柄,当然从成本上讲,这个消耗相对内存是小了很多。但换个角度,文件句柄也被其他模块消耗着,比如WT存储引擎,就需要消耗大量的文件句柄。分布式shard集群部署环境的最大连接数 阅读全部

转【MongoDB 配置篇】MongoDB 配置文件详解

目录 1 数据库环境 2 配置文件 2.1 配置文件格式 2.2 配置文件的使用 3 配置文件核心选项 3.1 systemLog选项 3.2 processManagement选项 3.3 cloud选项 3.4 net选项 3.5 security选项 3.6 setParameter 阅读全部

MySQL 优化闲聊 - mysql参数常用基础优化

  多年删库跑路、背锅经验告诉我,MySQL这个东西参数真的没啥好优化的,固定套路走一波 sysbench 不会太难看的,最后说到底还是磁盘「云上升配、自建么上Pcie」,平时自己测试玩都比生产猛「都可以压出各种异常,MySQL的日志莫非只有在这个时候有用?」,还哔哔慢「你说是谁的问题」。优化步骤  平时优化基本上按照如下顺序来玩即可  1. SQL优化是基础,Explain是神器  2. 软件优化,传说中的优化参数  3. 硬件优化,升配  4. 架构优化,这个就麻烦了,可能这个时候就要引入各 阅读全部

mysql 参数调优(1)之内存缓冲池innodb_buffer_pool_size

      内存的大小是最能直接反映数据库的性能。InnoDB存储引擎既缓存数据,又缓存索引,并且将它们缓存于一个很大的缓冲池中,即InnoDB Buffer Pool。因此,内存的大小直接影响了数据库的性能性能测试。  Percona公司的CTO Vadin对此做了一次测试,以此反映内存的重要性,结果如下图所示:      image.png  在上述测试中,数据和索引总大小为18GB,然后将缓冲池的大小分别设为2GB、4GB、6GB、8GB、10GB、12GB、14GB、16GB、18GB、 阅读全部

MySQL 选错索引的原因?

MySQL 中,可以为某张表指定多个索引,但在语句具体执行时,选用哪个索引是由 MySQL 中执行器确定的。那么执行器选择索引的原则是什么,以及会不会出现选错索引的情况呢?先看这样一个例子:创建表 Y,设置两个普通索引, 创建一个存储过程用于插入数据。MySQL: 5.7.27, 隔离级别: RRCREATE TABLE `Y` (  `id` int(11) NOT NULL AUTO_INCREMENT 阅读全部

wsl常用命令

WSL-Ubuntu18.04 LTS 重启方法以管理员权限运行cmd,//停止net stop LxssManager//启动net start LxssManager其它待补充 阅读全部

WSL不安装到C盘的方法,修改Ubuntu默认安装目录到其他盘,无需第三方工具

此方法比较适合新安装的wsl迁移。如果已经在使用状态中的wsl,可以参考本文后面使用第三方工具 LxRunOffline 的迁移方法。

小提示:如果安装时出现:WSL-参考的对象类型不支持尝试的操作,可使用以下方法解决:

netsh winsock reset

方式一:使用wsl命令迁移

1.查看WSL分发版本

在Windows PowerShell中输入如下命令:

wsl -l --all -v

2.导出分发版为tar文件到d盘

wsl --unregister Ubuntu-20.04

4.重新导入并安装WSL在d:\wsl-ubuntu20.04

ubuntu2004 config ---user Username

5.设置默认登陆用户为安装时用户名

ubuntu2004 config --default-user Username

6.删除tar文件(可选)

del d:\wsl-ubuntu20.04.tar

7.结束

经过以上操作后,就将WSL的默认安装目录迁移到D:\wsl-ubuntu20.04目录下了。此目录即为WSL的跟文件系统。整个过程无需第三方工具。


阅读全部

mysql全文索引字段加权重的实现方法

mysql建立全文索引时,可以实现模糊匹配:select MATCH (index) AGAINST ('key1 key2 key3') as score但如果要对多字段搜索,则没有直接对不同字段设置不同权重的,比如有 title 和 content 的字段,如果想让 title 的权重比 content 要高,可以通过两条索引加权后排序来完成,参考以下的代码:  drop table if exi 阅读全部

ubuntu旧版本如12.04在apt-get update时出现Err 404 Not Found的解决办法

  每个Ubuntu版本都有生命结束周期(EOL)时间(如当前 ubuntu 12.04 就不再维护);常规的Ubuntu发行版提供18个月的支持,而LTS(长期支持)版本则长达3年(服务器版本)和5年(桌面版本)。当某个Ubuntu版本达到生命结束周期时,其仓库就不能再访问了,你也不能再从Canonical获取任何维护更新和安全补丁。  如果你所使用的Ubuntu系统已经被结束生命周期,你就会从apt-get或aptitude得到以下404错误,因为它的仓库已经被遗弃了:  使用ap 阅读全部