Redis安装布隆过滤扩展方法

RedisBloom 插件下载和安装wget https://codeload.github.com/RedisBloom/RedisBloom/tar.gz/refs/tags/v2.2.18 tar -zxvf v2.2.18 cd RedisBloom-2.2.18/ make复制 Bloom filter 扩展文件到指定位置,这里以 /www/server/redis/ 为例cp redisbloom.so /w 阅读全部

curl访问https链接时的ssl证书问题

如果您的 PHP 环境证书有问题,可能会遇到报错,类似于cURL error 60: See http://curl.haxx.se/libcurl/c/libcurl-errors.html,请尝试按以下步骤解决:到 https://curl.haxx.se/ca/cacert.pem 下载证书文件cacert.pem,将其保存到 PHP 安装路径下。编辑 php.ini 文件,删除curl.cainfo配置项前的分号注释符(;),值设置为保存的证书文件cacert.pem的绝对路径。重启依赖 阅读全部

正则(前项肯定、后项肯定、前项否定、后项否定)

正则表达式语法中的断言,有的书上也称该语法为预查或者环视,都是一样的用法。有如下语法: (?=pattern) 零宽正向先行断言 (?!pattern) 零宽负向先行断言 (?<=pattern) 零宽正向后行断言(?<!pattern) 零宽负向后行断言例如:正则表达式(?!pattern) 是零宽负向先行断言,它会往后匹配pattern,匹配到的位置在pattern之前,并且匹配到的字符串必须不满足pattern。1、前置前项肯定?<=前面必须 阅读全部

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

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

[转]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 阅读全部

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 阅读全部

转:正则表达式的先行断言(lookahead)和后行断言(lookbehind) 例如:(?=pattern) (?!pattern)等

  正则表达式的先行断言和后行断言一共有4种形式:(?=pattern) 零宽正向先行断言(zero-width positive lookahead assertion)(?!pattern) 零宽负向先行断言(zero-width negative lookahead assertion)(?<=pattern) 零宽正向后行断言(zero-width positive lookbehind assertion)(?<!pattern) 零宽负向后行断言(zero-width n 阅读全部

PHP正则\p支持和Unicode字符集

  一、用法  \p{xx}  一个有属性 xx 的字符  \P{xx} 一个没有属性 xx 的字符  \X  一个扩展的 Unicode 字符  Unicode 字符集在具体文字中定义。使用文字名可以匹配这些字符集中的一个字符。例如:  \p{Greek}  \P{Han}  二、支持的字符集支持的文字ArabicArmenianAvestanBalineseBamumBatakBengaliBopomofoBrahmiBrailleBugineseBuhidCanadia 阅读全部

php数组排序

主要区别有:有些函数基于 array 的键来排序, 而其他的基于值来排序的:$array['key'] = 'value';。排序之后键和值之间的关联关系是否能够保持, 是指排序之后数组的键可能 会被重置为数字型的(0,1,2 ...)。排序的顺序有:字母表顺序, 由低到高(升序), 由高到低(降序),数字排序,自然排序,随机顺序或者用户自定义排序。注意:下列的所有排序函数都是直接作用于数组本身, 而不是返回一个新的有序的数组。以下函数对于数组中相等的元素,它们在 阅读全部

sublime 常用快捷键

Ctrl+R :显示当前文件函数导航 阅读全部

php网页截图可行方法

  一、使用第三方API  https://screenshotlayer.com/  二、使用PHP+CutyCapt实现网页截图  基于Webkit内核,在win10上测试未通过  方法原文:https://www.jb51.net/article/94007.htm  参考资料2:https://blog.csdn.net/changemyself/article/details/8618839  CutyCapt下载地址:http://sourceforge.net/projects/c 阅读全部

php执行系统命令 shell_exec, exec, passthru, system 区别

shell_exec()通过 shell 环境执行命令,并且将完整的输出以字符串的方式返回。也就是说, PHP先运行一个shell环境, 然后让shell进程运行你的命令, 并且把所有输出已字符串形式返回, 如果程序执行有错误或者程序没有任何输出, 则返回null.exec()string exec ( string $command [, array &$output [, int &$return_var ]] )与 shell_exec() 不一样, exec不会创建she 阅读全部

PHP基于Redis实现Bloom-Filter(布隆算法去重过滤器)

    背景    最近有一个项目是点击日志(10亿/天)实时计算,架构上简单来说就是利用flunted去从前端机收集原始日志,然后发给Kafka,Spark消费日志并计算保存结果到Redis。    Kafka的Producer和Consumer端的配置是异步且保证不丢消息,因此当超时发生时,就可能会导致消息的重发或者重复消费,需要在消费环节保证幂等。Spark消费逻辑主要是根据多个维度进行计数计算,因此,我们 阅读全部

filter_var:比正则更方便的PHP域名、邮箱、IP、MAC地址验证过滤工具

filter_var 支持的几种验证类型:http://php.net/manual/zh/filter.filters.php Validate filters 验证类Sanitize filters 净化类Other filters 其他Filter flags 标志类支持验证对象是否域名,IP,邮箱等,也可以过滤掉不符合要求的字符后返回一、验证判断类型:验证并返回正确结果 (VALIDATE 类)$str ='h 阅读全部

【转载】CI框架集成CkEditor编辑器+图片上传功能

1.先下载CKEditor编缉器(官网:http://ckeditor.com/download)。2.把解压后的CKEditor复制到CI的根目录下。3.把ckeditor目录下的ckeditor_php5.php文件复制到CI的application/libraries/下并重命名为ckeditor.php。4.这些准备工作做完后就可以在CI的控制器中调用CKEditor编缉器了,如下:###测试ckeditor###      & 阅读全部

CKEditor扩展插件:自动排版功能

CKEditor是新一代的FCKeditor,是一个重新开发的版本。CKEditor是全球最优秀的网页在线文字编辑器之一,因其惊人的性能与可扩展性而广泛的被运用于各大网站。如果还没接触过的可以看看,在线演示地址:http://ckeditor.com/demo当然了,今天我们的主要目的还不是介绍。还未下载CKEditor的同学可以点击下载:http://ckeditor.com/download下载完后的结构是这样的: 好了,开始制作了,我们照着执行顺序来吧。1.注册插件首先找到根目录 阅读全部

windows下php imagick 报错 ​no decode delegate for this image format `JPEG' 的解决方法

windows下使用 php imagick 时报错:no decode delegate for this image format `JPEG' @ error/constitute.c/ReadImage/501或者 no decode delegate for this image format `PNG'或者 no decode delegate for this image format `BMP'原因:IM_MOD_ 安装不完整解决方法: 阅读全部